Re: OWL Restrictions and RDF Named Graphs

Nathan, the issue you raise is clearly important, but it goes beyond  
the semantics currently available for RDF or OWL. So to seek an answer  
in some OWL or RDF 'rule' (using this word informally) or style of  
usage, is looking under the wrong lamppost. All of the current crop of  
SWeb formalisms (including RDF and all the OWLs) deal with simple  
assertions. Their semantics provide for claiming that a graph is true,  
as opposed to not true. There are no notions of provenance, or of  
trust, or of claims made by one authority as opposed to another, etc.  
etc. While (as you point out) such matters are important in practice,  
they all turn on which source of asserted facts you decide to believe,  
rather than the nature of the facts being asserted. So in your  
example, the claim that John is a member of Group might be made by  
John, or published by Group, or maybe derived by a reasoner from some  
complex tissue of assertions made by a variety of sources. But as far  
as the semantics is concerned, it is the same claim in all these  
cases, and to assert it - to claim it is true - is the same assertion  
no matter who makes it. So you cannot expect to find anything in any  
OWL (or RDF. etc.) standard which can help you distinguish the  
assertion as made by John from the assertion as made by the Group.

The named graph proposal (which has never been ratified by the W3C)   
included quite an elaborate device of 'warrant graphs' which allowed  
for explicit 'speech acts' where one graph could be securely signed by  
an authority and then in turn act as a warranted assertion of another  
graph, allowing these patterns of assertion to be make explicit in the  
RDF. But this amounted to a kind of RDF ontology of assertion and  
authority, rather than a change to the basic semantics.

Maybe the new RDF will be able to handle some of this. But it will  
take a while.

Pat

On Apr 22, 2010, at 4:44 AM, Nathan wrote:

> Michael Schneider wrote:
>> Hi Nathan!
>>
>> It is not clear to me what your actual question is and what you  
>> want to
>> achieve. But I can see several issues that I want to make you aware  
>> of. This
>> may help you to rephrase your question, or to reconsider your ideas.
>>
>> 1) Named graphs are not supported by OWL, neither semantically nor
>> syntactically.
>
> That's the problem I fear!
>
>> 2) The two restriction classes are equivalent to each other. I  
>> don't know
>> whether you have intended this. The two class expressions only  
>> differ in the
>> owl:onProperty part. But, as you state in your mail, the properties
>> sioc:member_of and sioc:has_member are inverse to each other, so the
>> property expressions "sioc:member_of" and "[ owl:inverseOf  
>> sioc:has_member
>> ]" that occur in the owl:onProperty parts are equivalent to each  
>> other.
>> Hence both restriction classes are equivalent.
>>
>> 3) I don't know what you mean when you say that a certain class  
>> "equates to
>> asking" a named graph. I also don't know what you mean by "if [the  
>> class]
>> asserts [some statement]" (classes don't assert anything). But what  
>> I can
>> see is that the two given statements
>>
>>  <http://ex.org/john#me> sioc:member_of <http://ex.org/groups#g1>
>>
>> and
>>
>>  <http://ex.org/groups#g1> sioc:has_member <http://ex.org/john#me>
>>
>> are equivalent, since the properties sioc:member_of and  
>> sioc:has_member are
>> equivalent. So you cannot use these statements as selection  
>> criteria, since
>> if one statement is asserted/inferred (by whatever means), the  
>> other will be
>> asserted/inferred as well.
>
> exactly, yet "john says he is a member of group-g1" is very  
> different to
> "group-g1 says that one of it's members is john". Belief states,  
> truth,
> unsure the precise term.
>
> context:
>
> I've hit this problem a few times, specifically this time it's do with
> processing the ACL ontology at runtime for access control, where a  
> user
> (identified by <users-uri>) is allowed access if it is deemed to be a:
>
> _:myfriends owl:equivalentClass [
> 	a owl:Restriction ;
> 	owl:hasValue <http://ex.org/groups#group1> ;
> 	owl:onProperty [ owl:inverseOf sioc:has_member ]
> ] .
>
> at runtime we have two graphs available to check, either the graph
> containing <users-uri> or the graph containing <http://ex.org/groups#group1 
> >
>
> this would equate either:
>
> ASK {
>  GRAPH <group> {
>    <group> <has_member> <webid> .
>  }
> }
>
> or:
>
> ASK {
>  GRAPH <webid> {
>    <webid> <member_of> <graph> .
>  }
> }
>
> (or both)
>
> due to the delicate nature of access control, it is critically  
> important
> to be able to assert which graph(s) to check (or maybe trust?) at  
> runtime.
>
> In the above, perhaps if we swapped the term graph for resource it  
> would
> make more sense.. For some reason I feel that rdfs:isDefinedBy could  
> be
> leveraged in an owl:Restriction, but I could easily be (and often  
> am) wrong.
>
> Best,
>
> Nathan
>
>

------------------------------------------------------------
IHMC                                     (850)434 8903 or (650)494 3973
40 South Alcaniz St.           (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes

Received on Friday, 23 April 2010 03:23:06 UTC