From Microformats Wiki
Revision as of 22:57, 28 January 2006 by EranGloben (talk | contribs) (added example from theryanking)
Jump to navigation Jump to search

Distributed Conversation

This is an exploratory page to document various methods used to anotate online conversations both distributed and not. The purpose of the studies on this page is to serve as background for the design of a microformat to anotate distributed conversations on blogs and other online media.

see distributed-conversation-brainstorming for more discussion on this topic.


Examples of Related Solutions


Email and Usenet both keep track of discussion threads in a non-central manner using headers and references to message IDs. Some common headers and their use are highlighted in RFC2076 - Common Internet Message Headers section 3.6:

  • In-Reply-To - Reference to message which this message is a reply to.
  • References - In e-mail: reference to other related messages, in Usenet News reference to replied-to-articles.
  • See-Also - References to other related articles in Usenet News.
  • Obsoletes - Reference to previous message being corrected and replaced.
  • Supersedes - Commonly used in Usenet News in similar ways to the "Obsoletes" header described above. In Usenet News, however, Supersedes causes a full deletion of the replaced article in the server, while "Supersedes" and "Obsoletes" in e-mail is implemented in the client and often does not remove the old version of the text.
  • Article-Updates - Only in Usenet News, similar to "Supersedes:" but does not cause the referenced article to be physically deleted.
  • Article-Names - Reference to specially important articles for a particular Usenet Newsgroup.

Thread Description Language

Thread Description Language - TDL is an RDF vocabulary for describing threaded discussions, such as Usenet, weblogs, bulletin boards, and e-mail conversations.

TDL v3 defines the following properties:

  • Property tdl:discusses - Relates a Post to a resource it talks about
  • Property tdl:follows - Indicates that this resource comes no earlier than the specified resource
  • Property tdl:inThread - Relates a post to a thread which includes it
  • Property tdl:mentions - Indicates that this resource refers to the specified resource
  • Property tdl:respondsTo - Relates a post to its parent(s) in a discussion
  • Property tdl:respondsNegativelyTo - Relates a post to a parent post which it dissents from or corrects
  • Property tdl:respondsPositivelyTo - Relates a post to a parent post with which it concurs

Discussion of TDL

  1. respondsNegativelyTo, respondsPositivelyTo are beyond the scope of this spec. They can both be implemented using vote-links.
  2. Without those, respondsTo remains the main connector between posts in a thread.
  3. mentions and discusses seem to be splitting hairs. It appears that both of them can be replaced by using the CITE tag.
  4. follows seems to be designed for use in a central registry that tracks threads and therefore is useless for a distributed solution.

IBIS - Issues Based Information Systems

Kunz's Issue Based Information Systems (IBIS) provide a framework for collaborative understanding of the major issues and implications surrounding what are described as ``wicked problems (problems that lack a definitive formulation). Understanding is achieved by using hypertext components to create structured arguments surrounding the issues. (Weblog Kitchen)

 The hypertext model of IBIS consists of three node types:
  1. issues
  2. positions
  3. arguments
 Eight link types represent the allowable relationships between these nodes:
  1. generalises
  2. specialises
  3. replaces
  4. questions
  5. is_suggested_by
  6. responds_to
  7. objects_to
  8. supports

Discussion of IBIS

Similar to TDL, IBIS seems to tackle a bigger problem than the one discussed here.

  • The different node types are not necessary for tracking a discussion thread. Tracking the flow of the conversation, the arguments and flow of ideas is a wider more complex issue than just gluing together disparate pieces of an online discussion.
  • Link type such as "generalises" and "specialises" might be useful but seem to require a lot from the user. If we allow for inheritance of link type they could be used as optional parts of the format but it appears that we can do well enough without them.

SIOC - Semantically-Interlinked Online Communities

SIOC (Semantically Interlinked Online Communities) is an ontology for describing discussion forums and posts on topic threads in online community sites. This includes but is not limited to: blogs, bulletin boards, mailing lists, newsgroups, etc.

Relevant properties defined under SIOC:

  • has_reply - This details replies or responses to this Post, which can be used for purposes of display ordering.
  • reply_of - Links to a previous Post, which this Post is a reply of (or to).
  • next_version - Links to the next revision of this Post.
  • previous_version - Links to a previous revision of this Post.
  • has_sibling - A Post may have a sibling or a twin that exists in a different Forum, but the siblings may differ in some small way (for example, language, category, etc.). The sibling of this Post only needs to have the changed information.
  • sibling_of - This Post differs from its sibling in some small way. The other sibling can be used as a source for any missing data.
  • attachment - A URI of the attachment related to a Post.
  • related_to - Related Posts for this Post, perhaps determined implicitly from topics or references.
  • is_closed - Details if this (and any children) is closed.

Discussion of SIOC

  • We cannot expect the complementary relations (e.g. has_reply) to exist. This would require a more strongly connected system that we do not assume exists. Similarly for is_closed.
  • next_version and previous_version might be an interesting alternative to updates in the case where the author of the updated version has control of the previous version as well. This is not always the case but might happen often enough to include this option.
  • The concept of siblings is an interesting one, although the difference between that and update or forward might be too particular for most users.
  • attachment might be interesting but is it necessary?
  • related_to might be useful in an aggregate environment (think delicious related tags) but otherwise I see those posts use as source citations, so this specific relation type might be pointless.

Examples of Use

From Email we get two basic relations between message:

  • Reply - This message is a reply to the referenced message.
  • Forward - This message forwards the referenced message to additional recipients.

From various publications (often of standards) we get:

  • Updates/Obsoletes - This documents contains updates or even replaces the referenced document.

Citation of resources comes in several flavors:

  • Quote
  • Citing a reference
  • Via link/Hat tip (mainly in blogs)

Web Examples

Author, href and blockquote

 <p>His column was picked up all over the web, including by Danny Ayers. He
 dives into discussion about <a href="http://dannyayers.com/archives/2006/01/10/new-data-languages-harmful/">how to build an RDF     model</a>,
 rather than an XML language:

 <p>When working with RDF, my current feeling (could be wrong ;-) is that in most cases it’s probably best to initially make up   afresh a new representation that matches the domain model as closely as possible(/appropriate). Only then start looking to replacing the   new terms with established ones with matching semantics. But don’t see reusing things as more important than getting an (appropriately)   accurate model. (Different approaches are likely to be better for different cases, but as a loose guide I think this works.)


Danny Ayers is the author of the pieces being referenced. The href identifies an article the blockquote comes from. "How to build an RDF model" may be considered a short description of the link, however sometimes this text is as short as "writes".

Cite attribute in blockquote or quote

From Les Orcahrd's 0xdecafbad:

 <blockquote cite="http://vrypan.net/log/archives/2006/01/19/delicious-as-fedd-manager/">As far as I know, the most popular link
  managment tool is del.icio.us, a tool I love for its power and simplicity. del.icio.us allow you to export all your links in RSS 
  which is   cool. So, I wrote a quick and dirty PHP script that converts this RSS export to an OPML list (see at the end of this 
  <p><small style="text-align: right; display: block;">
     Source: <a href="http://vrypan.net/log/archives/2006/01/19/delicious-as-fedd-manager/">
        vrypan|net|log » del.icio.us as feed manager

The cite attribute of the blockquote tag is defined in many standards but is not well supported by browsers and is therefore hidden from the user. This requires the author to repeat its value later, in the form of a link.

A similar example from Ryan King's blog:

  Intuitively, we’d expect a group to balance each other out, but 
  <q cite="http://en.wikipedia.org/wiki/Risky_shift">
     people with relatively moderate viewpoints tend to assume that their groupmates hold more extreme views, 
     and to alter their own views in compensation
  [<a href="http://en.wikipedia.org/wiki/Risky_shift">source</a>]