comment-brainstorming

From Microformats Wiki
Revision as of 10:17, 17 November 2008 by WebOrganics (talk | contribs) (→‎Proposal: oops typo)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Brainstorming for a Comment Microformat

This is a brainstorm for comment microformat. Examples of a comment can be found here comment-examples

Problem

Shortform: How do you track blog comments you've made?

Longform: How do track the comments you have made on blogs, comments made on blogs your interested in and comments other people have made on your own blog?

How can you do this in a pragmatic way, ingested into some kind of data store, searched or aggregated?

Contributors

Discovered Elements

Based on the analysis of 25 real world examples of a comment, the results can be found at the Comment Analysis section

The following properties occur most regularly across all examples (92% or more)

  • comment 100%
  • author 96%
  • published 96%
  • author-url 84%


Other achievable elements

  • comment-link (permalink) 60%

Schema I

Proposal

  • url (author-url) 84%
    • Use the url value of a hcard
  • reply (comment-link) 60%
    • By adding "rel-reply" the author is indicating that the page http://someblog/post#comment-001 is a reply for the referring page (see example).
      1. reply MAY be defined as rfc4685 section 3 (1) in-reply-to atom threading extension. A parser SHOULD use the referring page http://someblog/post as the value of in-reply-to
      2. reply is a bi-directional link type.

Example

<div class="hentry" id="comment-001">
   <span class="author vcard">
       <span class="entry-title"><a class="url fn" href="http://contributor.com/blog/">Author</a> said</span>
   </span>
   about <span class="updated" title="2008-09-01T14:40:45+01:00">72 days ago</span>, 
   <div class="entry-content">
      <p>Hey Great Post</p>
    </div>
   <a rel="reply bookmark" href="http://someblog/post#comment-001">link to this</a>
</div>

Transformation

<entry>
     <id>http://someblog/post#comment-001</id>
     <title>Author said</title>
     <updated>2008-09-01T14:40:45+01:00</updated>
      <author>
          <name>Author</name>
          <uri>http://contributor.com/blog/</uri>
      </author>
     <link rel="alternate" href="http://someblog/post#comment-001" type="text/html"/>
     <thr:in-reply-to
       ref="http://someblog/post"
       type="text/html"
       href="http://someblog/post"/>
     <content>Hey Great Post</content>
</entry>

Parser Notes

  • If the entry-title element is not used, the atom:title element SHOULD use the author value of the hentry presented in a contextual way, for example by prefixing the author value with "by" or appending it with "said" or "says".
  • The entry-title element SHOULD provide textual content and not be an empty string.

Summary

References

Design Notes

Schema II

Proposal

  • reuse hAtom
  • if Entry "B" is in an Entry Comments element of Entry "A", then Entry "B" is a comment on Entry "A"
  • an Entry Comments element is identified by using both class names "hfeed comments"
<div class="hentry">
   <h3 class="entry-title">The blog post title</h3>
   <div class="entry-content">The blog post text</div>
   (etc)
   <div class="hfeed comments">
       <div class="hentry" id="p0001">
          <div class="entry-content">Comment #1</div>
          (etc)
       </div>
       <div class="hentry" id="p0002">
          <div class="entry-content">Comment #2</div>
          (etc)
       </div>
   </div>
</div>

Details

Specific Example from the Wild

hAtom Comments changes are marked IN UPPER CASE LETTERS FOR VISIBILITY. Assume them to be the normal case in otherwise

(section to be completed)

Feedback

If we can indicate that the hAtom entries are also comments, we could add an indicator beside hAtom.

<div class="hfeed hcomment">

hAtom pattern goes here.

</div>

Alternatively, we could add hcomment with hentry to indicate that the following hentry can be treated also as a comment.

<div class="hentry hcomment">

hEntry pattern goes here.

</div>

--Sarven Capadisli 11:59, 25 Sep 2008 (PDT)


  • If an hfeed is embedded in an hEntry, that could be enough context to show "these items are replies to the one they're embedded in" singpolyma 12:20, 25 Sep 2008 (PDT)


hAtom and in-reply-to

A user comment (e.g., in blogs, wikis, forms) can be marked as an hAtom since it has a similar content pattern. A way to differentiate an hEntry (e.g., a blog post) from another hEntry (e.g., a user comment) can be done reusing in-reply-to from Atom Threading Extensions. It provides a mechanism to indicate that an entry is a response to another resource. rel="in-reply-to" can indicate that the current hEntry is a reply to another hEntry and has a reference point @href:

<a rel="in-reply-to" href="#comment_20080902144745">Parent</a>

hEntries that use rel="in-reply-to" can be considered as a comment entry in response to a parent entry in the threaded conversation (e.g., in blogs, wikis, forms).

hEntries that are chronologically listed can all use rel="in-reply-to" and refer to the root hEntry (e.g., blog post, form post)

By reusing in-reply-to, we can solve the microformats representation for user comments [1], [2], [3].

Example comment using in-reply-to: http://www.csarven.ca/my-responses-are-in-white

--Sarven Capadisli 21:25, 3 Oct 2008 (PDT)

See Also

Related: