Re: firts and rdf:rest as functional property

On Mar 20, 2009, at 9:14 AM, Bijan Parsia wrote:

> On 20 Mar 2009, at 14:02, Reto Bachmann-Gmür wrote:
>
>> Hi Bijan
>>> ...
>>>> If rdf:rest
>>>> and rdf:first are not functional a list could typically not be be
>>>> splitted into different rdf molecules[1]. Splitting graphs into  
>>>> small
>>>> components is essential for applications like diff, sync[2] and
>>>> versioning[3].
>>>
>>> If you are doing to decompose *semantically*, then functionality  
>>> will
>>> be too weak to do the job anyway.
>> Not sure if I understand you, if a do decomposition of a graph into  
>> RDF
>> molecules[1] (as this is done in the Graph Versioning System GVS  
>> [2]) if
>> the base ontology contains the fact that rdf:rest and rdf:firts are
>> owl:functionalProperty a list will typically (i.e. if some of the
>> objects of the rdf:first statements are grounded or if the first
>> rdf:List resource is grounded) be split into many small components  
>> while
>> otherwise it is (assuming the rdf:List resources are anonymous) all
>> contained in one molecule. Isn't the decomposition into a semantical
>> decomposition?
>
> Sorry, don't have time to peek at that at the moment.
>
> By semantic decomposition, I mean that there will be certain  
> properties preserved in the decomposition. See the slides for:
> 	http://owl.cs.manchester.ac.uk/2008/iswc-modtut/
>
> Functionality isn't necessarily the problem, but I presume you want  
> first to be min1 as well (for a well formed list...having holes is  
> as bad as having tentacles).
>
> Functionality might have the surprising effect of entailing that two  
> things are the same. Which might not be how you want to "repair" the  
> tentacled list.
>
> So, it's not clear to me that this is the right tool for the job.  
> Perhaps I'm wrong about what job you're trying to do?
>
> rdf:Lists were not introduced for modeling, but for encoding the  
> syntax of OWL (taken from DAML+OIL). They have been pressed into  
> service for modeling, but the built-in semantics (IMHO) as well as  
> other aspects of them aren't really suited for modeling.

As one of the RDF designers, allow me to say I agree with Bijan. One  
has to bear in mind that RDF is a descriptive notation, semantically,  
so an RDF graph using the rdf:List properties should be thought of as  
_describing_ a list. For modeling purposes, it needs to actually _be_  
a(n implementation of a) list datastructure. RDF descriptions are  
allowed to be incomplete and partial and ambiguous, as a basic design  
decision. Datastructures are expected to be complete and determinate:  
but for RDF, that amounts to a syntactic requirement on an RDF graph  
rather anything to do with its semantics. Even if rdf: first (say) is  
owl:functionalProperty, this alone does not constrain any RDF graph to  
contain any particular triples: the molecular decomposition might  
still fail if information is missing from the graph (as it always can  
be, regardless of the functionality or otherwise of any relations.)

> But we model with what's at hand.

Quite. Indeed, this might well be written in pokerwork over the desk  
of anyone designing anything for the Web. Sigh.

Pat Hayes

>
> Cheers,
> Bijan.
>
>
>
>

------------------------------------------------------------
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, 20 March 2009 15:31:08 UTC