blog-description-format: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(Removed prematur content)
Line 13: Line 13:
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.
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 ==
== Information to be provided ==
 
Here are some of examples for information that might be provided:


NOTE: Background research for a format should use *real* examples found on the Web, rather than hypothetical examples (note example.org URLs) - [http://tantek.com/log/ Tantek]
* 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
* Details about the author(s)
** Name (e.g: "John Doe")
** Contact details
** Geographical Location


A possible way to describe/markup the information listed above:


Example 1:
<pre><nowiki>
<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>
</nowiki></pre>
Example 2:
<pre><nowiki>
<pre><nowiki>
<div class="blogformat" xml:lang="en">
<div class="blogformat" xml:lang="en">
   <p><img class="logo" alt=""  
   <p><img class="logo" alt=""  
         src="http://rbach.priv.at/Misc/2005/Smiley.gif" />
         src="http://rbach.priv.at/Misc/2005/Smiley.gif" />
   <a class="author" href="http://example.org/jdoe">My</a>  
   <a class="author" href="http://example.org/jdoe"><span title="John Doe">My</span></a>  
   <a class="bookmark" href="http://example.org/blog" title="John Doe's Blog">blog</a>
   <a class="bookmark" href="http://example.org/blog" title="John Doe's Blog">blog</a>
   about  
   about  
Line 57: Line 50:
</nowiki></pre>
</nowiki></pre>


Note: Other code examples can be found [http://rbach.priv.at/Misc/2005/BlogDescriptionMicroformat/ExamplesForBrainstorming.html| here]. These examples include both a code listing and a rendered version.
Note 1: Author's name is provided using &lt;span title="John Doe"&gt;, the rest of the author-related information is provided on http://example.org/jdoe.


= PREMATURE =
Note 2: Tags describe the categories of the blog, they are contained in the blog's short description.


It is premature and unwise to write a draft proposal a microformat without first performing the requisite backround research.  Please see the [[process]] document.  The background research page (e.g. "blog-description-format") is also an inappropriate place to begin a draft proposal.  -[http://tantek.com/log/ Tantek]


== Examples ==


== Early draft ==
<span style="color:green;">(add real-world examples here)</span>
 
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>&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 ===
'''Status:''' REQUIRED
 
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 ===
'''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>&lt;a&gt;</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:''' REQUIRED
 
It's essential as every (we)blog provides at least one feed (e.g. RSS). Machines could readout headlines and excerpts.
 
It's possible to provide more than one feed.
 
=== 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]]
* (langmust): It's a must among others for issues of searching. --[[User:BjoernSeibert |BjoernSeibert]]
 
* (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]]
 
== Issues ==
 
=== Area of application ===


"blog description format" is targeted on blogs.
== Existing practise ==
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]]
<span style="color:green;">(add existing practise here)</span>

Revision as of 13:51, 23 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.

Information to be provided

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
  • Details about the author(s)
    • Name (e.g: "John Doe")
    • Contact details
    • Geographical Location

A possible way to describe/markup the information listed above:

<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"><span title="John Doe">My</span></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 1: Author's name is provided using <span title="John Doe">, the rest of the author-related information is provided on http://example.org/jdoe.

Note 2: Tags describe the categories of the blog, they are contained in the blog's short description.


Examples

(add real-world examples here)

Existing practise

(add existing practise here)