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



Reply via email to