Vocabulary: Ontology

Bernard Vatant bernard.vatant at mondeca.com
Wed Sep 12 02:19:08 PDT 2007


Hello Frederic

Frederic V. Hessman a écrit :
> Very nice, and a WONDERFUL example of my basic problem with the 
> current state of things: all of the tools out there are only 
> accessible if there is a fundamental vocabulary  - how else am I (and 
> especially my computer) to know that "Bayer_objects" was the magic 
> word ("parallax" I might have guessed myself).  Yes, I can create some 
> fancy software agent that goes out, creates a dynamic ontology based 
> on all the links currently available, and then guesses that 
> "Bayer_objects" is the thing I need, but ......
You don't need a fancy software agent. Suppose you have just discovered  
http://dbpedia.org/resource/Denebola.
In the description of this resource, you have two standard properties 
rdf:type and skos:subject. The former is indicating classe(s) of the 
resource in the implicit ontology, and the latter categories in a 
concept scheme (here, the Wikipedia categories). The boarder between 
type and category is quite subtle and arbitrary, but for the task at 
hand, let us consider them both as ways to classify resources.
Now you're interested in the "parallax" property which is also in the 
description. SPARQL allows you to find which types and categories are 
used for things with a parallax. For example the following (using again 
the DBpedia SPARQL endpoint http://dbpedia.openlinksw.com:8890/sparql)
will yield all categories used for a thing with a parallax property.

PREFIX  skos:  <http://www.w3.org/2004/02/skos/core#>
PREFIX  prop:  <http://dbpedia.org/property/>

SELECT    distinct  ?c
WHERE {   ?x  skos:subject  ?c.
                   ?x  prop:parallax ?p.}
> Ya'll are welcome to produce oodles of fancy tools and breathtaking 
> demos based on the power of current semantic software tools if you'll 
> just let me _officially_ name a spiral galaxy a "spiral galaxy" and a 
> Delta Scuti star a "Delta Scuti star" (please substitute your own 
> favorite form for the tokens - who cares, really)( I'm rather fond of 
> the token "PeanutButterAndJelly" and would like to see what your 
> favorite semantic tool does with this token when applied to a spiral 
> galaxy).
Well, try this

PREFIX  rdfs:  <http://www.w3.org/2000/01/rdf-schema#>
PREFIX  skos:  <http://www.w3.org/2004/02/skos/core#>

SELECT    ?x
WHERE {   ?x  skos:subject  ?c.
                   ?c  rdfs:label "Spiral galaxies" @en.}

Granted, if you put "Spiral galaxy" instead of "Spiral galaxies" so far 
you don't retrieve anything.
> Or do we want to wait long enough for the dbpedia crew to decide which 
> tokens we are effectively allowed to use and create a professional 
> vocabulary for us?  In fact, maybe we should pool the current dbpedia 
> list of resource labels and simply adopt them as good working starts 
> and then kindly ask the dbpedia crew to use the rest of the tokens if 
> possible......
You don't need to wait for anything of the like to happen. You can 
create your own professional vocabulary, publish it in RDF, and either 
let other declare equivalence, or be proactive and declare equivalence 
from your side if you think it's useful. Suppose you have declared your 
own concept "SpiralGalaxy" and declare an instance "Messier31" in your 
own namespace, the following declarations on either or both DBpedia / 
IVOA side will glue the data :

ivoa:SpiralGalaxy      owl:sameAs      dbpedia:Category:Spiral_galaxies
ivoa:Messier31         owl:sameAs      dbpedia:Whirlpool_Galaxy

And if you want to make sure your resource is found under a variety of 
names, use skos:prefLabel and skos:altLabel to name your concept in a 
variety of labels and languages, such as

ivoa:SpiralGalaxy    skos:prefLabel      "Spiral galaxy" @en
ivoa:SpiralGalaxy    skos:altLabel      "Spiral galaxies" @en
ivoa:SpiralGalaxy    skos:altLabel      "Spiral" @en
ivoa:SpiralGalaxy    skos:prefLabel      "Galaxie spirale" @fr
ivoa:SpiralGalaxy    skos:altLabel      "Galaxies spirales" @fr
ivoa:SpiralGalaxy    skos:altLabel      "Spirale" @fr
etc ...

and even if you feel like it (not sure this gets consensus).
ivoa:SpiralGalaxy    skos:altLabel      "PeanutButterAndJelly"  :-)

You can already find examples of that in geographical linked data. The 
French INSEE, Geonames data base and DBpedia have independently defined 
the city "Versailles", with different identifiers and properties, and 
developed a posteriori heuristics to match those. The results are as 
following:
On DBpedia you find 
<http://dbpedia.org/page/Versailles>   owl:sameAs   
<http://sws.geonames.org/2969679/>

GeoNames defines two different resources for Versailles, one for the 
populated place and another for the administrative subdivision of 
France, the latter being the parent of the former.
<http://sws.geonames.org/2969679/>  geonames:parentFeature  
<http://sws.geonames.org/6444096/>

And finally Geonames maps the administrative subdivision to its INSEE 
identifier
<http://sws.geonames.org/6444096/>  owl:sameAs  
<http://rdf.insee.fr/geo/COM_78646>

I've developped this example in detail to show that data bases defined a 
priori on completelely different structures and ontologies can a 
posteriori be linked by RDF glue, while keeping there separate 
ontologies and identifying schemes.


-- 

*Bernard Vatant
*Knowledge Engineering
----------------------------------------------------
*Mondeca**
*3, cité Nollez 75018 Paris France
Web:    www.mondeca.com <http://www.mondeca.com>
----------------------------------------------------
Tel:       +33 (0) 871 488 459
Mail:     bernard.vatant at mondeca.com <mailto:bernard.vatant at mondeca.com>
Blog:    Leçons de Choses <http://mondeca.wordpress.com/>



More information about the semantics mailing list