Hi Othar,

I walked through the Google ontology and attempted to "clean it up" so that is friendlier to Semantic Web tools such as editors or query tools.

The result of my attempt can be found at

        http://topbraid.org/examples/datavoc.rdf

An overview of this ontology is in the class diagram at:

        http://topbraid.org/examples/Google-DataVocabulary-TopBraid.png

I have tried to keep this redesign as light-weight as possible and at some places I needed to guess about the intended semantics and use cases. My suggested model is using global rdfs:domains where possible, but for some properties I had to use owl:Restrictions to indicate that a property is expected to be used at a given class. This was needed for all properties that are shared among multiple classes, such as v:name. All properties have global rdfs:ranges, but in a few cases I was not sure whether the intended value should be a string or a link to another RDF entity. I have added comments to everything, based on what I found on your web pages. In some cases I was not sure about upper-case/lower-case names - such details matter a lot in RDF!

I also adjusted the namespace to http://rdf.data-vocabulary.org/# and the base URI to http://rdf.data-vocabulary.org/ . I hope this makes sense.

I have developed this redesign with TopBraid Composer [1], but other semantic web editors should be able to handle it as well.

Once this schema is stable, other ontologies could be linked to it. There clearly is a large potential overlap between it and FOAF or SIOC, and it would be great to have some rdfs:subClassOf/ owl:equivalentClass or rdfs:seeAlsos thrown in at appropriate places. This would link all of this information into the wide open Linked Data web. It does not really matter where to put those link triples, but as a first step we need to have stable URIs for your resources.

Anyway, I hope this helps as additional input - feel free to reuse what you like.

Regards,
Holger

[1] http://topquadrant.com/products/TB_Composer.html



On May 14, 2009, at 8:30 AM, Othar Hansson wrote:

thanks for all the feedback (will fix Resource/comments/labels soon)...

Because, as I've inadvertently demonstrated, most people don't
understand xml namespaces, what I want is to have a single xmlns
prefix that any webmaster can add to their docs.  I also don't want to
have set up redirects to serve
http://rdf.data-vocabulary.org/MyNewProperty for each property we
define.

From the discussion, my best method for this is to use

xmlns:v="http://rdf.data-vocabulary.org/#";
(where that 302s to rdf.xml)

and in the RDF,

<rdf:RDF xml:base="http://rdf.data-vocabulary.org/"; ...
(so you don't have to see the ugly rdf.xml)

I assume I don't want a "#" in xml:base, right?

While I have your attention, are there any validators that actually
parse both a document and the contents of RDF found via the xmlns
attributes, and validate the namespace+document jointly?

--Othar
{...@google.com,@othar.com}

p.s. switching to my personal address for these discussions to better
sort my mail.



On Wed, May 13, 2009 at 1:29 PM, Holger Knublauch <ya...@knublauch.com> wrote:
I'm the tech lead on this project at Google.  Please keep feedback
(details or big picture) coming on this list, or email me privately.

Thanks for fixing the rdf:Property (was: rdfs:Property) bug so quickly.

But there is another detail: The superclass rdf:Resource does not exist -
it's rdfs:Resource.

Furthermore, why do none of the "datatype" properties such as countryName define a range? rdfs:Literal would clarify that the properties cannot point
to other resources. Or xsd:string etc.

And the namespace is really weird. Please drop the rdf.xml from the
namespace.

Finally, all names in this vocabulary should carry rdfs:comments and
rdfs:labels to make it easier for people to use them in editing tools.

Anyway, it's great to see that Google is starting to support RDF and RDFa!

Holger

---
TopQuadrant, Inc.
http://www.topquadrant.com



Reply via email to