Microdata and Linked Data

Hi All,

I've been taking a closer look at microdata. While I like the proposal 
in general, in particular the chance to unite microformat style 
annotations with some of the Semantic Web formalism (such as URIs for 
objects), there are still a number of points that I feel could be 
improved. So here are my proposals for discussion:

#1

The use of a URI as the value of the id attribute. It seems to me there 
is actually nothing in the spec that would stop this:

"Identifiers are opaque strings. Particular meanings should not be 
derived from the value of the id  attribute."

This is great because in principle I could do something like:

<section id="http://john.example.com#hedral" 
item="org.example.animal.cat com.example.feline">
<h1 itemprop="org.example.name com.example.fn">Hedral</h1>
</section>

I assume you can achieve something similar with the "about" property but 
that would require me to write:

<section item="org.example.animal.cat com.example.feline">
<h1 itemprop="org.example.name com.example.fn">Hedral</h1>
<a itemprop="about" href="http://john.example.com#hedral"/>
</section>

This is longer by itself, and if I want an internal identifier as well, 
than I have to write:

<section id="hedral" item="org.example.animal.cat com.example.feline">
<h1 itemprop="org.example.name com.example.fn">Hedral</h1>
<a itemprop="about" href="http://john.example.com#hedral"/>
</section>

#2

The other area that could be possibly improved is the connection of type 
identifiers with ontologies on the web. I would actually like the notion 
of  reverse domain names if

-- there would be an explicit agreement that they are of the form 
xxx.yyy.zzz.classname
-- there would be a registry for mappings from xxx.yyy.zzz to URIs.

For example, org.foaf-project.Person could be linked to 
http://xmlns.com/foaf/0.1/Person by having the mapping from 
org.foaf-project to http://xmlns.com/foaf/0.1/.

It wouldn't be perfect, the FOAF ontology as you see is not at 
org.foaf-project but at com.xmlns. However, it would be a step in the 
right direction.

#3

I would consider adding the sameAs property as part of the standard 
vocabulary. This is a term from the OWL vocabulary that is widely used 
in the Linked Data world for connecting entities that are deemed to be 
equivalent. Alternatively, we could add the entire RDFS and OWL 
vocabulary to the spec.

#4

I don't expect that writing full URIs for property names will be 
appealing to users, but of course I'm not a big fan either of defining 
prefixes individually as done in RDFa with the CURIE mechanism. Still, 
prefixes would be useful, e.g. foaf:Person is much shorter to write than 
com.foaf-project.Person and also easier to remember. So would there be a 
way to reintroduce the notion of prefixes, with possibly pointing to a 
registry that defines the mapping from prefixes to namespaces?

<section id="hedral" namespaces="http://www.w3c.org/registry/" 
item="animal:cat">
<h1 itemprop="animal:name">Hedral</h1>
</section>

Here the registry would define a number of prefixes. However, the 
mechanism would be open in that other organizations or even individuals 
could maintain registries.

Looking forward to your feedback,

Peter

Received on Friday, 24 July 2009 11:08:52 UTC