- From: Alan Ruttenberg <alanruttenberg@gmail.com>
- Date: Mon, 10 Sep 2007 03:32:02 -0400
- To: helen.chen@agfa.com, Semantic Web <semantic-web@w3.org>
BTW, if you need just the rdf subclass statements that are the result
of that query for use in some system you could use the query:
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
construct {?a rdfs:subClassOf ?b}
from <http://purl.org/commons/galen/>
where {?a rdfs:subClassOf ?b filter (!isBlank(?a) && !isBlank(?b))}
This can be packaged up as a URL and you can get the resultant rdf
with a http get. For your convenience, I've made a tinyurl for the
query: http://tinyurl.com/23zalo
-Alan
On Sep 8, 2007, at 9:48 PM, Alan Ruttenberg wrote:
> Hi Helen,
>
> Not sure about N3QL but it can be done in SPARQL, e.g.
>
> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
>
> select *
> from <http://purl.org/commons/galen/>
> where {?a rdfs:subClassOf ?b filter (!isBlank(?a) && !isBlank(?b))}
>
> You can try this against the Neurocommons triple store here:
>
> http://hcls1.csail.mit.edu:8890/nsparql/
>
> Use count(*) instead of * to see how many results you get with or
> without the filter.
>
> Only the raw owl is loaded. There is no inference.
>
> My only thought about N3QL was to write a rule that added a type
> assertion when something is a class but not a restriction (say
> "namedClass") and then do the query against that class.
>
> -Alan
>
>
> On Sep 8, 2007, at 7:37 AM, helen.chen@agfa.com wrote:
>
>>
>> Dear List
>>
>> I am using N3QL to get anatomic structures and relationship from
>> an ontology.
>>
>> When query for subclasses of a concept, some bnodes are returned,
>> as a result of restriction on that class, for example:
>>
>> In the ontology:
>> ---------------------------------------
>> :Hip a owl:Class ;
>> rdfs:subClassOf :BodyJunctionalBodyPart ;
>> rdfs:subClassOf
>> [ a owl:Restriction ;
>> owl:onProperty :hasBetaConnection ;
>> owl:someValuesFrom :Thigh
>> ] .
>> ----------------------
>>
>> So a query
>>
>> [] select {?A ?B}
>> where {?A rdfs:subClassOf ?B}.
>>
>> will give results
>>
>> :Hip :BodyJunctionalBodyPart
>> :Hip var:_123456 (bnode).
>>
>> Is there a way to eliminate the bnodes in the query result, i.e by
>> using a filter clause maybe?
>>
>> Thanks for your help.
>>
>> Helen
>
Received on Monday, 10 September 2007 07:32:48 UTC