[uf-new] Re: Comment Questions

David Janes davidjanes at blogmatrix.com
Sat Nov 15 05:57:02 PST 2008


On Sat, Nov 15, 2008 at 8:28 AM, Toby A Inkster <mail at tobyinkster.co.uk> wrote:
> OK, I've had a think about this overnight, which is often a good way of
> clarifying an issue in ones head. Upon consideration, I think the best
> solution is as follows.
>
> What is the nature of a comment? What makes a piece of text not just a piece
> of text, but a comment? I think the answer is that a comment is a (usually
> short) reply to something. (The length of a reply can easily be determined
> by a byte count if required, so I will ignore this feature of comments.) So
> what we need is a method for indicating that one hentry is a reply to
> another hentry.
>
> I propose (or put my vote behind earlier proposals for) two methods and
> suggest that *both* be allowed.
>
> 1. Within the parent hentry, a class="hfeed replies" is used to group all
> direct replies to it. The entire replies hfeed must be within the parent
> *hentry* (not just within the parent hfeed). This solution suits a threaded
> layout, with each level of hfeed perhaps left inset by a few ems - similar
> to slashdot. No explicit visible links are required between an hentry and
> its parent, as the layout makes the relationships clear.
>
> 2. An hentry can link to its parent hentry using rel="in-reply-to" (or
> perhaps class="in-reply-to"). This is Sarven's proposal. This allows for
> comments to be placed in a sorted (e.g. chronological) order, where the link
> between a comment and its parent is not necessarily clear from layout,
> necessitating a visible link. In this case, the parent hentry needs a
> rel="bookmark" permalink or an id attribute on its root element, so that the
> child hentry knows where to link to. This solution also allows for an hentry
> to be in reply to multiple parent hentries, perhaps even hentries on
> different pages. When "in-reply-to" is found, this wins over "replies".
>
> In the spirit of reusing term rather than inventing new ones, both
> ("replies" and "in-reply-to") are taken from RFC 4685 - Atom Threading
> Extensions.
>
> Example in threaded style, showing only entry titles, contents and replies
> (i.e. omitting authorship for conciseness):
>
>        <div class="hentry" id="article-101">
>          <h1 class="entry-title">An Article</h1>
>          <p class="entry-content">Some text.</p>
>          <div class="hfeed replies">
>            <h2 class="feed-title">Comments</h2>
>            <div class="hentry" id="comment-7501">
>              <p class="entry-content">A reply.</p>
>              <div class="hfeed replies">
>                <div class="hentry" id="comment-7509">
>                  <p class="entry-content">Reply to reply.</p>
>                </div>
>              </div>
>            </div>
>            <div class="hentry" id="comment-7504">
>              <p class="entry-content">Another reply.</p>
>            </div>
>          </div>
>        </div>
>
> Might be used with the following stylesheet:
>
>        .replies
>        {
>                margin-left: 3em;
>                padding-left: 0.5em;
>                border-left: 2px solid silver;
>        }
>        .replies .replies
>        {
>                font-size: 90%;
>        }
>
> The same comment structure, shown semi-linearly:
>
>        <div class="hentry" id="article-101">
>          <h1 class="entry-title">An Article</h1>
>          <p class="entry-content">Some text.</p>
>          <div class="hfeed replies">
>            <h2 class="feed-title">Comments</h2>
>            <div class="hentry" id="comment-7501">
>              <p class="entry-content">A reply.</p>
>            </div>
>            <div class="hentry" id="comment-7504">
>              <p class="entry-content">Another reply.</p>
>            </div>
>            <div class="hentry" id="comment-7509">
>              <p class="entry-content">Reply to reply.</p>
>              <p>
>                In reply to:
>                <a rel="in-reply-to" href="#comment-7501">Fred</a>.
>              </p>
>            </div>
>          </div>
>        </div>
>
> The same comment structure, completely linear:
>
>        <body class="hfeed">
>          <div class="hentry" id="article-101">
>            <h1 class="entry-title">An Article</h1>
>            <p class="entry-content">Some text.</p>
>          </div>
>          <h2>Comments</h2>
>          <div class="hentry" id="comment-7501">
>            <p class="entry-content">A reply.</p>
>            <p>
>              In reply to:
>              <a rel="in-reply-to" href="#article-101">article</a>.
>            </p>
>          </div>
>          <div class="hentry" id="comment-7504">
>            <p class="entry-content">Another reply.</p>
>            <p>
>              In reply to:
>              <a rel="in-reply-to" href="#article-101">article</a>.
>            </p>
>          </div>
>          <div class="hentry" id="comment-7509">
>            <p class="entry-content">Reply to reply.</p>
>            <p>
>              In reply to:
>              <a rel="in-reply-to" href="#comment-7501">Fred</a>.
>            </p>
>          </div>
>        </body>
>
> Thoughts?

I like the nested replies - i.e. the concept of an Entry Replies
element, which could be physically represented as  "hfeed replies".

I don't see the benefit in the later format, as we can add a Entry
Replies wrapper around that whole "<h2>Comments</h2>(all the
comments)" section without presentation impact.

Regards, etc...

-- 
David Janes
Mercenary Programmer
http://code.davidjanes.com


More information about the microformats-new mailing list