Re: A question on the vocabulary for 'persons' - ACL level of granularity?

Xiaoshu Wang wrote:
>>> IMHO, inadequate separation of ontology's domain will have some 
>>> serious side effects in the long run.  Aside from wasted 
>> bandwidth and 
>>> computation to handle the unnecessary statement, but when more 
>>> ontologies are shared, the chance for incur conflict will 
>> increase and 
>>> makes the sharing ontology impossible.
>> In my opinion, we should stop to care too much about single, 
>> delimited ontologies. When I want to reuse some parts of FOAF 
>> while leaving out the ridiculous parts ('geekcodes', 
>> 'dna-checksums' and other jokes), I would simply extract the 
>> classes and properties that I need and add them to my 
>> ontology / software. As I see it, all of these statements 
>> should be seen as a global graph of RDF nodes and arcs. How 
>> these are represented locally inside .rdf /.owl files or 
>> through SPARQL endpoints is secondary. 
> 
> I wish it could be that simple when you handle the task to machine.  Show me
> how you can only import the foaf:Person without fetching the foaf:geekcodes
> as well? 

You might for example use SPARQL to take a subset. There are already
inline annotations indicating property and class (im)maturity levels.

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#>
SELECT *
WHERE {
?term a rdfs:Class ; rdfs:label ?label ;
      rdfs:comment ?comment ; vs:term_status "stable"

}
ORDER BY ?label

# eg
http://librdf.org/query?uri=http%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2Findex.rdf&query=PREFIX+rdf%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23%3E%0D%0APREFIX+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0APREFIX+foaf%3A+%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0D%0APREFIX+vs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F06%2Fsw-vocab-status%2Fns%23%3E%0D%0ASELECT+*%0D%0AWHERE+%7B%0D%0A%3Fterm+a+rdfs%3AClass+%3B+rdfs%3Alabel+%3Flabel+%3B+%0D%0A++++++rdfs%3Acomment+%3Fcomment+%3B+vs%3Aterm_status+%22stable%22+%0D%0A%0D%0A%7D%0D%0AORDER+BY+%3Flabel%0D%0A&language=sparql&Run+Query=Run+Query&.cgifields=language&.cgifields=json&.cgifields=raw


similarly for properties,

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX vs: <http://www.w3.org/2003/06/sw-vocab-status/ns#>
SELECT DISTINCT ?status ?name ?x WHERE
{
 ?x a rdf:Property .
 ?x rdfs:label ?name .
 ?x vs:term_status ?status .
}
ORDER BY ?status

# eg
http://librdf.org/query?uri=http%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2Findex.rdf&query=PREFIX+rdf%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23%3E%0D%0APREFIX+rdfs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0D%0APREFIX+vs%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2003%2F06%2Fsw-vocab-status%2Fns%23%3E%0D%0ASELECT+DISTINCT+%3Fstatus+%3Fname+%3Fx+WHERE+%0D%0A%7B%0D%0A+%3Fx+a+rdf%3AProperty+.%0D%0A+%3Fx+rdfs%3Alabel+%3Fname+.%0D%0A+%3Fx+vs%3Aterm_status+%3Fstatus+.%0D%0A%7D%0D%0AORDER+BY+%3Fstatus+&language=sparql&Run+Query=Run+Query&.cgifields=language&.cgifields=json&.cgifields=raw


Regarding fitness for semweb-lifesci purposes, my take is that FOAF
should be something that is useful for describing the members of the
community and (at a high level, alongside of course Dublin Core, SKOS
thesauri, and specialist vocabularies/ontologies) their professional
activities and collaborative outputs - weblogs, online presentations,
publications etc. If it needs to change to achieve this, we'll look at that.

Its usage within scientific and professional datasets directly is
something else. I would not expect to see the FOAF namespace directly
used, for example, in clinical trials data. I wouldn't expect to see
vCard either. In such contexts it often makes sense to define one's own
vocabulary, even if it involves duplicating common namespaces (Dublin
Core, FOAF/vCard), to keep some local control and predictability. It
might be that someone writes OWL mappings (sameAs / subclass etc) to
link together different but essentially identical notions of 'Person'.
Whether such assertions are actually made within the documents found at
the relevant namespace URIs is again a separate set of decisions.

You ask some good questions. To those we might add: what is the
exposure/risk, if the server hosting a popular namespace is compromised?
Are we expecting semweb-lifesci systems to be consuming published
RDFS/OWL at runtime? without checking that the ontology's RDF/XML
expresssion hasn't been maliciously changed?

cheers,

Dan

Received on Sunday, 17 September 2006 09:01:06 UTC