Schema.org extension mechanism: discussion

A part of today's call focused on the schema.org extension mechanism,
documented since June 2011 at http://schema.org/docs/extension.html. I
had recently experimented with using this extension mechanism to
provide more bibliographic-friendly labels, while still allowing
schema.org processors to fall back to the existing schema.org classes
and properties.

However, in June 2013 on public-vocabs, Dan Brickley basically said
"use RDFa Lite and point to an external vocabulary":
http://lists.w3.org/Archives/Public/public-vocabs/2013Jun/0015.html

This somewhat reversed his support of the "/" extension approach at
http://lists.w3.org/Archives/Public/public-vocabs/2012Jan/0002.html -
although even back then Dan was wary of internationalization issues,
and he is very worried about schema.org becoming bloated with all
possible enumerations and classes.

Thus, the RDFa Lite approach is cool with me. For the Holdings example
we could still point at the generic "sku" property, but also point at
our own domain (for example, schemabibex.org - just registered it,
don't worry) for more bibliographic-specific vocabulary such as
"callNumber" (or "classificationNumber" if callNumber is too
NA-specific).

That would turn:

<div vocab="http://schema.org/" typeof="Offer">
...
<span property="sku">780 B97</span>
</div>

Into something like:

<div vocab="http://schema.org/" prefix="bib: http://schemabibex.org/"
typeof="Offer bib:Holding">
...
<span property="sku bib:callNumber">780 B97</span>
</div>

Which seems to be the best of both worlds. It also fits well with the
rise of JSON-LD
(http://blog.schema.org/2013/06/schemaorg-and-json-ld.html) which uses
a similar vocabulary mechanism.

Of course, we can also define brand new properties this way, so that
might be a way of handling Audiobook and its additional properties
(and perhaps the best way of modelling it for the purposes of a
proposal, given that the wheels of proposal adoption sometimes run
slow...).

That said, the third extension mechanism that (I believe) Jeff raised
- the use of http://schema.org/Property and http://schema.org/Class -
are still in play too, although I have yet to track down a practical
example or discussion around the use of these. Volunteers welcome :)

Dan

Received on Tuesday, 16 July 2013 20:53:47 UTC