[whatwg] Microdata and Linked Data
Ian Hickson
ian at hixie.ch
Mon Aug 3 03:10:00 PDT 2009
(I trimmed public-html from the CC list to avoid cross-posting, and
because the whatwg list has had most of the traffic on this topic so far;
please feel free to forward this to public-html if you would rather
discuss that there instead.)
On Fri, 24 Jul 2009, Peter Mika wrote:
>
> 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>
In practice, all the use cases that were brought up that needed to
identify the item were cases where there was a URL already in the page,
e.g. in a link or an <img> or a <video> element, such that it actually
ends up better if we use itemprop=about rather than having a dedicated
attribute (like id="" or about="") for identifying types.
Are there use cases where this is not the case? For example, when would
you need to have an internal identifier?
> 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.
What problem is this solving?
> 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.
Could you elaborate on this? What are the use cases that this is intended
to address? What do you mean by "adding the sameAs property"?
> 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.
I'm definitely against any in-page indirection mechanism, because we have
seen with XML Namespaces (and with RDFa) that prefixes are simply a huge
source of problems.
However, there actually already is a registry for registering strings that
start with a keyword and a colon: the scheme registry. So if animals
become important enough that they need their own scheme, I guess people
could register them that way. Alternatively, a short domain followed by a
keyword seems like a reasonable option: instead of "animal:cat", have
"org.animal.cat": it's only four more characters. (Actually, with ICANN
considering opening up TLDs, people could just register those:
"animal.cat" is a valid reverse DNS label if "animal" is a TLD!)
--
Ian Hickson U+1047E )\._.,--....,'``. fL
http://ln.hixie.ch/ U+263A /, _.. \ _\ ;`._ ,.
Things that are impossible just take longer. `._.-(,_..'--(,_..'`-.;.'
More information about the whatwg
mailing list