Print

Print


Thanks for 'splaining - but here goes...

On 11/5/14 2:35 PM, Simon Spero wrote:
> bf:workTitle is not an instance of class bf:Work; it is an instance of 
> owl:ObjectProperty (and/or  of rdf:Property ).
>
> I am not quite sure what you mean by class-ness flowing from property 
> to subject .
>
> You can infer class from the range or domain of properties.  In the 
> general case, you cannot infer that a property entails a more specific 
> sub-property given just simple domain and range constraints.

That's not quite what I said. You can infer class of the subject from 
properties, but cannot do the versa -- you cannot infer the class of a 
property from the class of the subject. Therefore where:

bf:workTitle has domain bf:Title

and

:X a bf:Work
       bf:workTitle[  a bf:Title  ;
             bf:titleValue"Heart of Midlothian"  ]  .

You do not infer that bf:workTitle has a class of bf:Work from :X. Note 
that this is a common confusion for folks coming from XML or OO, where 
class is inherited to properties.


>         So a SPARQL query of "get me all the triples for
>         class=bf:Work" will retrieve
>
>     :X a bf:Work
>
>
> under an rdfs entailment regime or greater, a query for :Work in the 
> value position will return :X and :Y .
>
>     but never bf:workTitle, regardless of what graph it is found in.
>     You *will* however be able to query for all bf:Title(s).
>
>
> If the graph union includes the ontology, and the sparql query 
> includes  "?S ?P :Work" , you /will/ get bf:workTitle rdfs:domain 
> :Work  .

I was speaking of the case in which bf:workTitle rdfs:domain bf:Title.

>
> That doesn't seem to be what you were asking for though.
>
> If you can clarify your question I may be able to give a more useful 
> answer.
Actually, I don't really need answers. I would enjoy some mutual 
discussion, however.

kc

-- 
Karen Coyle
[log in to unmask] http://kcoyle.net
m: +1-510-435-8234
skype: kcoylenet/+1-510-984-3600