blog-description-format-brainstorming: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
No edit summary
m (Reverted edit of MvmHhj, changed back to last version by Tantek)
 
(9 intermediate revisions by 5 users not shown)
Line 5: Line 5:


=== Editors ===
=== Editors ===
* [http://bs-markup.de Bj
* [http://bs-markup.de Björn Seibert], [http://rbach.priv.at/ Robert Bachmann]
 
=== Authors ===
* [http://bs-markup.de Björn Seibert], [http://rbach.priv.at/ Robert Bachmann]
 
== Purpose ==
A microformat to describe the contents of a (we)blog. It provides a specific set of information to categorize a (we)blog. Enables easier search for humans and efficient collection of information by machines.
 
Here are some of examples for information that might be provided:
 
* Details about the blog
* Blog name (e.g: "John Doe's Blog")
** Blog URI (e.g: <nowiki>http://example.org/</nowiki> )
** Lanuage used for the blog, read-able by machines (e.g: "en-US" or "de")
** Topics covered by the blog
** A short description
** Available feeds (RSS, Atom, etc.)
** A small logo image
* Details about the author(s)
** Name (e.g: "John Doe")
** Organisation
** Contact details
** Geographical Location
 
== Theoretical examples ==
 
<pre><nowiki>
<div class="blogformat" xml:lang="en">
  <p><img class="logo" alt="" src="http://rbach.priv.at/Misc/2005/Smiley.gif" />
  <a class="author" href="http://example.org/jdoe">My</a>
  <a class="bookmark" href="http://example.org/blog" title="John Doe's Blog">blog</a>
  about
  <span class="description">
  <a rel="tag" href="http://technorati.com/tags/web+standards">Web standards</a>,
  <a rel="tag" href="http://technorati.com/tags/css">CSS</a>,
  <a rel="tag" href="http://technorati.com/tags/xhtml">XHTML</a>
  and topics releated to web development.</span></p>
  <p>There are
  <a rel="alternate" type="application/atom+xml" href="http://example.org/feeds/atom">Atom</a> and
  <a rel="alternate" type="application/rss+xml" href="http://example.org/feeds/rss">RSS 2.0</a>
  feeds available.</p>
</div>
</nowiki></pre>
 
See [http://rbach.priv.at/Misc/2005/BlogDescriptionMicroformat/ExamplesForBrainstorming.html#example2 here] or [http://www.bs-markup.de/info.php there] for a rendered version of this example.
 
== Strawman proposal ==
 
Text in ''italics'' is used as reference to the comments below.
 
=== Blog information container ===
 
The blog information container element contains all other elements of the blog description.
 
It '''must''' have a class attribute which includes the value <code>blogformat</code>.
 
=== Language ===
 
The blog information container element or an ancestor element ''(langanc)'' of it '''must''' include
a language code using the <code>xml:lang</code> attribute to indicate the language used for the blog.
 
If the document type used by the author allows the usage of the <code>lang</code>
attribute, it must be used to specify the language code.
The value '''must''' be equal to the one used for <code>xml:lang</code>. ''(langequ)''
 
Example 1:
<pre><nowiki>
<!-- A blog written in English as spoken in the US -->
<div class="blogformat" lang="en-US" xml:lang="en-US">
    <!-- child elements -->
</div>
</nowiki></pre>
 
Example 2:
<pre><nowiki>
<!-- A blog written in French -->
<div class="blogformat" lang="fr" xml:lang="fr">
    <!-- child elements -->
</div>
</nowiki></pre>
 
=== Blog URI ===
 
The blog URI element '''must''' be an <code>&lt;a&gt;</code> element and '''must''' contain a <code>rel</code> attribute which includes the value <code>bookmark</code>.
 
It must link to the blog's mainpage using an absolute URI ''(absuri)''.
 
This element '''should''' provide the name of the blog in its <code>title</code> attribute.
 
If no <code>title</code> attribute is provided agents ''(agents)'' '''must''' use the text value of the blog URI element ''(meta)''.
 
=== Blog description and topics ===
 
It contains the main categories covered by the blog.
 
The categories are marked up within anchors ''(cat)'' that (may) refer to technorati-tags.
 
Example:
<pre><nowiki><a rel="tag" href="http://technorati.com/tags/xhtml">XHTML</a></nowiki></pre>
 
In addition authors can write up a short introduction.
 
=== Author information ===
 
Information about the author '''should''' be provided.
 
The author information element '''must''' have a class attribute which includes the value <code>author</code>. This element '''should''' provide the name of the author
in its <code>title</code> attribute.
 
Example:
<pre><nowiki><span class="author" title="John Doe">John's</span> Blog.</nowiki></pre>
 
If no <code>title</code> attribute is provided agents ''(agents)'' '''must''' use the text value of the author information element ''(meta'').
 
The author information element may be an <code>&lt;a&gt;</code> element which links
to the author's page using an absolute URI ''(absuri)'' or may be some other element containing
an [[hcard]].
 
Example:
<pre><nowiki>
<a class="author" title="John Doe"
  href="http://example.org/~johnd/">John's</a> Blog.
</nowiki></pre>
 
=== Feeds ===
 
''To be done.''
 
Perhaps using 
<a rel="alternate" type="application/atom+xml" href="http://example.org/feeds/atom">Atom</a> 
<a rel="alternate" type="application/rss+xml" href="http://example.org/feeds/rss">RSS 2.0</a>
 
(Maybe the already used 
<link rel="alternate" type="application/rss+xml" href="http://example.org/feeds/rss" title="RSS 2.0" />
is enough? --RobertBachmann
)
=== Image ===
 
''To be done.''
 
=== Comments ===
* (langanc): There are XHTML documents which already have their language specified in the &lt;html&gt; tag. In this case it would be redundant to require having it twice. --[[User:RobertBachman |RobertBachmann]]
 
* (langequ): See http://microformats.org/discuss/mail/microformats-discuss/2005-July/000440.html. --[[User:RobertBachman |RobertBachmann]]
 
* (absuri): As long as we are parsing blog information from the original URI, handling relative URIs isn't a big problem. I think we should recommend the use of absolute URIs ("absolute URIs '''should''' be used") but I'm not sure if we should require them. --[[User:RobertBachman |RobertBachmann]]
 
* (agent): Is agent the right term?  --[[User:RobertBachman |RobertBachmann]]
 
* (meta): Perhaps agent would want to extract information from <code>&lt;head&gt;</code> if no information can be found within "blogformat"
**<code>&lt;link rel="author" href="http://example.org/~jdoe" /&gt;</code>
**<code>&lt;meta name="author" value="John Doe" /&gt;</code>
**<code>&lt;title&gt;John Doe's Blog&lt;/title&gt;</code>
--[[User:RobertBachman |RobertBachmann]]
 
* (cat): '''May''', '''should''' or '''must''' they be within anchors. What are the options where they can point to? --[[User:BjoernSeibert |BjoernSeibert]]
 
 
 
== See also ==
* [[blog-description-format]] (background research)

Latest revision as of 23:10, 2 October 2007

Blog description format (brainstorming)

Discussion Participants

Editors

Authors

Purpose

A microformat to describe the contents of a (we)blog. It provides a specific set of information to categorize a (we)blog. Enables easier search for humans and efficient collection of information by machines.

Here are some of examples for information that might be provided:

  • Details about the blog
  • Blog name (e.g: "John Doe's Blog")
    • Blog URI (e.g: http://example.org/ )
    • Lanuage used for the blog, read-able by machines (e.g: "en-US" or "de")
    • Topics covered by the blog
    • A short description
    • Available feeds (RSS, Atom, etc.)
    • A small logo image
  • Details about the author(s)
    • Name (e.g: "John Doe")
    • Organisation
    • Contact details
    • Geographical Location

Theoretical examples

<div class="blogformat" xml:lang="en">
   <p><img class="logo" alt="" src="http://rbach.priv.at/Misc/2005/Smiley.gif" />
   <a class="author" href="http://example.org/jdoe">My</a> 
   <a class="bookmark" href="http://example.org/blog" title="John Doe's Blog">blog</a>
   about 
   <span class="description">
   <a rel="tag" href="http://technorati.com/tags/web+standards">Web standards</a>,
   <a rel="tag" href="http://technorati.com/tags/css">CSS</a>,
   <a rel="tag" href="http://technorati.com/tags/xhtml">XHTML</a>
   and topics releated to web development.</span></p>
   <p>There are 
   <a rel="alternate" type="application/atom+xml" href="http://example.org/feeds/atom">Atom</a> and 
   <a rel="alternate" type="application/rss+xml" href="http://example.org/feeds/rss">RSS 2.0</a>
   feeds available.</p>
</div>

See here or there for a rendered version of this example.

Strawman proposal

Text in italics is used as reference to the comments below.

Blog information container

The blog information container element contains all other elements of the blog description.

It must have a class attribute which includes the value blogformat.

Language

The blog information container element or an ancestor element (langanc) of it must include a language code using the xml:lang attribute to indicate the language used for the blog.

If the document type used by the author allows the usage of the lang attribute, it must be used to specify the language code. The value must be equal to the one used for xml:lang. (langequ)

Example 1:

<!-- A blog written in English as spoken in the US -->
<div class="blogformat" lang="en-US" xml:lang="en-US">
    <!-- child elements -->
</div>

Example 2:

<!-- A blog written in French -->
<div class="blogformat" lang="fr" xml:lang="fr">
    <!-- child elements -->
</div>

Blog URI

The blog URI element must be an <a> element and must contain a rel attribute which includes the value bookmark.

It must link to the blog's mainpage using an absolute URI (absuri).

This element should provide the name of the blog in its title attribute.

If no title attribute is provided agents (agents) must use the text value of the blog URI element (meta).

Blog description and topics

It contains the main categories covered by the blog.

The categories are marked up within anchors (cat) that (may) refer to technorati-tags.

Example:

<a rel="tag" href="http://technorati.com/tags/xhtml">XHTML</a>

In addition authors can write up a short introduction.

Author information

Information about the author should be provided.

The author information element must have a class attribute which includes the value author. This element should provide the name of the author in its title attribute.

Example:

<span class="author" title="John Doe">John's</span> Blog.

If no title attribute is provided agents (agents) must use the text value of the author information element (meta).

The author information element may be an <a> element which links to the author's page using an absolute URI (absuri) or may be some other element containing an hcard.

Example:

<a class="author" title="John Doe"
   href="http://example.org/~johnd/">John's</a> Blog.

Feeds

To be done.

Perhaps using

<a rel="alternate" type="application/atom+xml" href="http://example.org/feeds/atom">Atom</a>   
<a rel="alternate" type="application/rss+xml" href="http://example.org/feeds/rss">RSS 2.0</a>

(Maybe the already used

<link rel="alternate" type="application/rss+xml" href="http://example.org/feeds/rss" title="RSS 2.0" />

is enough? --RobertBachmann )

Image

To be done.

Comments

  • (langanc): There are XHTML documents which already have their language specified in the <html> tag. In this case it would be redundant to require having it twice. --RobertBachmann
  • (absuri): As long as we are parsing blog information from the original URI, handling relative URIs isn't a big problem. I think we should recommend the use of absolute URIs ("absolute URIs should be used") but I'm not sure if we should require them. --RobertBachmann
  • (meta): Perhaps agent would want to extract information from <head> if no information can be found within "blogformat"
    • <link rel="author" href="http://example.org/~jdoe" />
    • <meta name="author" value="John Doe" />
    • <title>John Doe's Blog</title>

--RobertBachmann

  • (cat): May, should or must they be within anchors. What are the options where they can point to? --BjoernSeibert


See also