W3C home > Mailing lists > Public > public-xg-omm@w3.org > October 2011

Re: Object Memory Modeling XG and RDFa

From: Manu Sporny <msporny@digitalbazaar.com>
Date: Sun, 09 Oct 2011 22:28:02 -0400
Message-ID: <4E925832.6050705@digitalbazaar.com>
To: Alexander Kröner <Alexander.Kroener@dfki.de>
CC: Sebastian Germesin <sebastian.germesin@dfki.de>, Massimo Romanelli <massimo.romanelli@dfki.de>, Jens Haupert <Jens.Haupert@dfki.de>, Felix Sasaki <felix.sasaki@dfki.de>, "public-xg-omm@w3.org" <public-xg-omm@w3.org>, public-rdfa-wg@w3.org
On 10/05/2011 05:32 AM, Alexander Kröner wrote:
 > I've wondered if you found the time to have a closer look on our
 > examples, or if you require additional information about the OMM. We
 > would like to add some information about this OMM aspect to the
 > OMM XGR, so your feedback would be of special value for us.

Apologies, but until this point, I had not been able to look at it. My 
response is below, hope it helps in some small way.

On 09/26/2011 10:42 AM, Alexander Kröner wrote:
> the W3C Object Memory Modeling Incubator group (OMM XG, [1])
> experimented with an RDFa-based encoding of the Object Memory Model
> (OMM, the main result of this XG). An example, which was validated with
> W3C RDFa Distiller and Parser, is located here:
>
> http://www.dfki.de/~haupert/files/omm_rdfa.html

A couple of things on a quick look through the source code:

1.  You should be using RDFa 1.1. Instead of xmlns:, use prefix, like
     so:
     prefix="omm: http://www.w3.org/2005/Incubator/omm/elements/1.0/"
2.  Your declaration of xsd is not correct, it should be:
     prefix="xsd: http://www.w3.org/2001/XMLSchema#"
3.  Your OMM vocabulary isn't human or machine readable, you should
     public a vocabulary document at:
     http://www.w3.org/2005/Incubator/omm/elements/1.0/
4.  I suggest that you do not version your vocabulary with minor
     release information unless you intend to publish minor releases,
     and if so, those minor releases shouldn't break backwards
     compatibility in which case the minor release number doesn't
     matter. In other words... just use major numbers:
     http://www.w3.org/2005/Incubator/omm/elements/1/
5.  You don't need to express the version number of your vocabulary,
     your vocabulary URL above does that. Don't do this:
     <span property="omm:version">1</span>
6.  If your primary ID is a URL, it should be expressed as one, so
     instead of this:
     <span property="omm:primaryID">http://example.com/p1</span>
     do this:
     <a rel="omm:primaryID" href="http://example.com/p1">...</a>
     You should be doing this with all of your URLs
7.  This whole Header, Table of Contents, Block stuff in OMM just
     does not seem like the right way to model this information. You
     have a graph data structure available to you... don't treat it
     like tape-based storage data structure. :)
8.  omm:uri - this term is suspect... why do you need it? IRIs are
     first-class citizens in RDF. Do this instead:
     <a rel="omm:additionalBlock" href="http://URL_OF_BLOCK">...</a>
9.  omm:type is suspect as well. Instead of this:
     <span property="omm:type">omm_http</span>
     do this:
     <span typeof="omm:Http">...</span>
     or something to that effect.
10. This is redundant:
     <span property="omm:date"
           datatype="xsd:dateTime">2011-01-31T08:12:50+02:00</span>
     of encoding: <span property="omm:encoding">ISO8601</span>
     xsd:dateTime is an ISO8601 formatted date, you don't need to
     specify that it is again in the next triple.
11. omm:hasTag looks a bit like a mess - it looks very complicated and
     open ended.

Other than that, the RDFa markup looks fairly good. I think the biggest 
issue is the OMM vocabulary itself - it seems to be over-modeling. If 
you don't make the vocabulary simpler, the chances of uptake are reduced 
greatly.

Instead, of trying to think of it in terms of Headers and Tables of 
Contents and Blocks... just think of modeling the data as you would a 
real object - just add Event objects to the main object and timestamp 
them. That said, I don't really know what use cases you need to support 
- but the vocabulary seems quite complex for the intended use (and it's 
not documented, so I can't understand how each vocabulary term is meant 
to be used).

> We first discussed this experiment with our colleague and RDFa WG member
> Sebastian Germesin, and now wanted to share our experiences. And of
> course we are interested in feedback concerning our attempt, e.g., if
> the OMM structure could be expressed in a more accurate or simpler way.

The RDFa isn't the problem, IMHO... it's the vocabulary. I've made a few 
suggestions above that I think could help, so maybe you could respond to 
those and we could see how we may go from there.

> Once we agree on the representation, we might also proceed with a
> discussion of our “user experience” with RDFa, if you are interested in
> that.

Yes, we are very interested in hearing about the issues that you may 
have hit when using RDFa. I think that due to the complexity of the OMM 
data model, the RDFa is going to look very complex indeed. To give you 
an example of what a simpler vocabulary could do, you may want to look 
at the schema.org examples on this page:

http://linter.structured-data.org/examples/

-- manu

-- 
Manu Sporny (skype: msporny, twitter: manusporny)
Founder/CEO - Digital Bazaar, Inc.
blog: Standardizing Payment Links - Why Online Tipping has Failed
http://manu.sporny.org/2011/payment-links/
Received on Monday, 10 October 2011 02:28:47 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 10 October 2011 02:28:47 GMT