blog-description-format: Difference between revisions
(→Examples: Added an example) |
(Added early draft spec. for some elements) |
||
Line 56: | Line 56: | ||
Additional description and code examples (in German language) can be found [http://www.bs-markup.de/ex/microformats_blogformat.php here]. | Additional description and code examples (in German language) can be found [http://www.bs-markup.de/ex/microformats_blogformat.php here]. | ||
== Early draft == | |||
A very early draft featuring some of the used tags an attributes and their meaning. | |||
Text in ''italics'' is used as reference to the comments below. | |||
=== Blog information container === | |||
'''Status:''' REQUIRED | |||
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 === | |||
'''Status:''' REQUIRED ''(langmust)'' | |||
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 === | |||
'''Status:''' REQUIRED | |||
The blog URI element '''must''' be an <code><a></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 === | |||
'''Status:''' REQUIRED | |||
''To be done.'' | |||
=== Author information === | |||
'''Status:''' RECOMMENDED | |||
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><a></code> element which links | |||
to the author's page using an absolute URI ''(absuri)''. | |||
Example: | |||
<pre><nowiki> | |||
<a class="author" title="John Doe" | |||
href="http://example.org/~johnd/">John's</a> Blog. | |||
</nowiki></pre> | |||
=== Feeds === | |||
'''Status:''' RECOMMENDED | |||
''To be done.'' | |||
=== Image === | |||
'''Status:''' OPTIONAL | |||
''To be done.'' | |||
== Comments == | |||
* (langmust): IMO a language must be specified. If we would say "If no language is specified the default is English", many non-english blogs would appear as English ones because of people who forgot to add <code>(xml:)lang</code>. --[[User:RobertBachman |RobertBachmann]] | |||
* (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. --[[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><head></code> if no information can be found within "blogformat" | |||
**<code><link rel="author" href="http://example.org/~jdoe" /></code> | |||
**<code><meta name="author" value="John Doe" /></code> | |||
**<code><title>John Doe's Blog</title></code> | |||
--[[User:RobertBachman |RobertBachmann]] | |||
== Issues == | |||
=== Area of application === | |||
"blog description format" is targeted on blogs. | |||
But could't we use it for other online media? | |||
Instead of "blog author" we could say "publisher". | |||
For example the fictitious online web magazine "LA Dog Magazine" may also be described using "blog description format". --[[User:RobertBachman |RobertBachmann]] |
Revision as of 21:38, 22 July 2005
Blog description format
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.
Examples
Example 1:
<div class="blogformat" xml:lang="de"> <img class="logo" src="http://example.org/logo.gif" alt="" /> <a class="bookmark" href="http://example.org/blog" title="Blog title">Blog name</a> <!-- Topics covered by the blog --> <ul class="categories"> <li><a rel="tag" href="http://technorati.com/tags/Webstandards">Webstandards</a></li> <li><a rel="tag" href="http://technorati.com/tags/css">CSS</a></li> <li><a rel="tag" href="http://technorati.com/tags/xhtml">XHTML</a></li> </ul> <ul class="feeds"><!-- List of available news feeds --> <li><a rel="alternate" type="application/atom+xml" href="URL">Atom1.0</a></li> <li><a rel="alternate" type="application/rss+xml" href="http://example.org/rss-2.0">RSS 2.0</a></li> </ul> <!-- Describes the topics of the blog --> <p class="description">Webstandards, CSS, XHTML and topics releated to web development.</p> </div>
Example 2:
<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>
Note: Other code examples can be found here. These examples include both a code listing and a rendered version.
Additional description and code examples (in German language) can be found here.
Early draft
A very early draft featuring some of the used tags an attributes and their meaning.
Text in italics is used as reference to the comments below.
Blog information container
Status: REQUIRED
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
Status: REQUIRED (langmust)
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
Status: REQUIRED
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
Status: REQUIRED
To be done.
Author information
Status: RECOMMENDED
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).
Example:
<a class="author" title="John Doe" href="http://example.org/~johnd/">John's</a> Blog.
Feeds
Status: RECOMMENDED
To be done.
Image
Status: OPTIONAL
To be done.
Comments
- (langmust): IMO a language must be specified. If we would say "If no language is specified the default is English", many non-english blogs would appear as English ones because of people who forgot to add
(xml:)lang
. --RobertBachmann
- (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
- (langequ): See http://microformats.org/discuss/mail/microformats-discuss/2005-July/000440.html. --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
- (agent): Is agent the right term? --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>
Issues
Area of application
"blog description format" is targeted on blogs. But could't we use it for other online media? Instead of "blog author" we could say "publisher".
For example the fictitious online web magazine "LA Dog Magazine" may also be described using "blog description format". --RobertBachmann