grouping-brainstorming

Jump to: navigation, search

Contents

Discussion Participants

Editors

Contributors

Purpose

It is useful to understand the relationship between objects on a website. A blogger may want to describe several different objects on a web page and group them explicitly. It is important that the structure of the page not affect this grouping as network relationships are often not hierarchical (HTML is always hierarchical).

Where an object resides in a network of relationships can clarify its purpose. For example, an audio album can have a number of audio tracks. It is desirable that the tracks and the album can be associated with one another without needing to be hierarchically grouped. The same goes for chapters in a DVD movie, sections of a podcast, and a set of geographic points.

Grouping relationships are fundamental to how we understand object interactions. The purpose of this brainstorming session is to create possibilities for a grouping proposal.

Terminology

Common Terminology for Grouping

Recommendation

Discovered Methodology

Method of Grouping

Ordered Grouping

Unordered Grouping

Sparse Grouping

Dense Grouping

Additional Possibilities

Possible Solutions

Option 1: Implicit grouping

<div class="haudio">
   <span class="collaborator hcard fn">Ammonite</span>
   <span class="work-title">Reconnection</span>
   <div class="haudio">
      <span class="work-title">Sunset</span>
   </div>
</div>

Pros:

Pro/con:

Cons:

Option 2: Explicit id-based grouping

<div id="reconnection" class="haudio">
   <span class="collaborator hcard fn">Ammonite</span>
   <span class="work-title">Reconnection</span>
</div>
[...]
<div id="reconnection.sunset" class="haudio">
   <span class="work-title">Sunset</span>
</div>

Pros:

Cons:

Option 3: Explicit class-based grouping

<div class="haudio grouping.reconnection">
   <span class="collaborator hcard fn">Ammonite</span>
   <span class="work-title">Reconnection</span>
</div>
[...]
<div class="haudio grouping.reconnection.sunset">
   <span class="work-title">Sunset</span>
</div>

Pros:

Cons:

Option 4: id-class grouping with anchors

<div class="haudio" id="reconnection">
  <span class="collaborator hcard fn">Ammonite</span>
  <span class="work-title">Reconnection</span>
</div>
[...]
<div class="haudio reconnection">
  <span class="work-title">Sunset</span>
  Part of <span class="part-of"><a name="#reconnection">Reconnection</a></span>
</div>

Pro:

Con:

Option 5: class-based grouping with keywords

<div class="haudio reconnection">
  <span class="collaborator hcard fn">Ammonite</span>
  <span class="work-title">Reconnection</span>
</div>
[...]
<div class="haudio reconnection.member">
  <span class="work-title">Sunset</span>
</div>

Pros:

Cons:

Option 6: per-microformat grouping

It has been proposed that we should not attempt to create a grouping mechanism that spans all Microformats. Scott Reynen writes:

My current proposal is to keep grouping semantics specific to each
individual microformat.  In this case, albums could be identified by
something like class="album", audio tracks by something like
class="audio-track", and parsers could simply recognize that albums are
groups of tracks, just as hatom parsers recognize that feeds are groups
of entries.  Of course, I still think hatom could cover most of the
semantics of audio downloads.

Pros:

Pro/Con:

Cons:

Option 7: id-class grouping

This problem solution proposal was put forward by Chris Griego:

  <span id="internal-event" class="hset vcalendar">Internal</span>
  and <span id="with-client-event" class="hset vcalendar">With-Client</span> Events
  <ol>
  <li class="with-client-event vevent"><span class="summary">FOO Sales
  Pitch</span> [...]</li>
  <li class="internal-event vevent"><span class="summary">Company
  Picnic</span> [...]</li>
  <li class="with-client-event vevent"><span class="summary">BAR Photo
  Shoot</span> [...]</li>
  </ol>

Using the hset class names attaches special meaning to the element's ID value, marking it as the machine-readable group name, and then any other element in the document with a class name that matches the ID should be considered a set member. The class attribute is a natural grouping mechanism, by simply marking contacts across the internet with 'vcard' we've grouped them in the category of contact information.

Pros:

Cons:

Possible Uses

This section describes potential applications for an audio info microformat.

Transformational Uses

It may be desirable to process an audio blog using a transformational tool, such as XSLT, to produce a different representation that can be used elsewhere - such as in a REST invocation.

Archival Uses

Being able to scrape information from a web page and store it long term may be desirable for search companies.

Personal Database

Search Engines

Partial Text Blogs

Issues

See Also

grouping-brainstorming was last modified: Tuesday, January 6th, 2009

Views