- From: Luc Moreau <l.moreau@ecs.soton.ac.uk>
- Date: Tue, 09 Apr 2013 12:08:30 +0100
- To: Graham Klyne <graham.klyne@zoo.ox.ac.uk>
- CC: "public-prov-wg@w3.org" <public-prov-wg@w3.org>
Hi Graham, My preference has always been to apply the QualifiedPattern to all prov relations, including this one, but that's not the direction the group decided to follow. Therefore the current solution is a compromise. As far as your suggestion is concerned, see below some comment. On 04/09/2013 10:29 AM, Graham Klyne wrote: > Hi Luc, > > Just for the record, I'm OK with these changes. I.e. no blockers. > But in the spirit of exploration, I'll pursue one of your responses a > little further... > > On 08/04/2013 22:24, Luc Moreau wrote: >> > Section 5 >> > >> > I'm not understanding the motivation or purpose of the constraint >> > >> > IF mentionOf(e, e1, b1) and mentionOf(e, e2, b2), THEN e1=e2 >> and b1=b2. >> > >> > e.g. It seems to me that if bundle b1 has specializationOf(e1, e2) or >> > mentionOf(e1, e2, b2) then it would make sense for e to be a >> specialization of >> > distinct entities e1 and e2. >> > >> > Rather than just e1 = e2, is it not sufficient to allow: >> > >> > specializationOf(e1,e2) OR specializationOf(e2,e1) OR e1 = e2 >> > >> > ? >> >> >> The reason for this constraint is the rdf encoding in two separate >> properties. >> >> With a ternary relation, we could express >> mentionOf(e, e1, b1) and mentionOf(e, e2, b2). >> >> In rdf, we would have >> e prov:mentionOf e1 >> e prov:asInBundle b1 >> e prov:mentionOf e2 >> e prov:asInBundle b2 >> >> which would allow us to express >> mentionOf(e, e1, b2) and mentionOf(e, e2, b1) >> but nothing requires e1 to be described in b2 and e2 in b1. > > Ah, yes, I'd forgotten that aspect. But I can't help wondering if > this is a case of the tail wagging the dog: designing semantics to fit > a particular syntactic pattern for a particular representation. > > An alternative RDF representation, arguably more in line with the > published best-practice note for dealing with n-tuples > (http://www.w3.org/TR/swbp-n-aryRelations/#pattern1), might be: > > e prov:mentionOf > [ prov:specializationOf e1 ; prov:asInBundle b1 ] , > [ prov:specializationOf e2 ; prov:asInBundle b2 ] . > > Or, equivalently: > > e prov:mentionOf _:m1, _:m2 . > _:m1 prov:specializationOf e1 ; prov:asInBundle b1 . > _:m2 prov:specializationOf e2 ; prov:asInBundle b2 . > > Corresponding to > > mentionOf(e, e1, b1) You now have introduced a new resource _:m1, which is itself an entity. So, for mentionOf(e, e1, b1), we would have e, _:m1, e1, b1. I am not sure what this _:m1 is. How would you describe this entity? wht fixed face does it have? > mentionOf(e, e2, b2) > > where prov:mentionOf in the RDF might even be replaced with > prov:specializationOf, and prov:asInBundle with prov:has_provenance. > > (In constructing this example, I didn't set out to re-open the other > point I raised about the need for a new relation, but the introduction > of the extra RDF node here provides a place to hang the additional > aspect(s) associated with the two mentions.) > The additional node, as you suggest, is the right approach. But it is what the qualified pattern is already offering. It would be awkward, in a same ontology, to have two different patterns to encode n-ary relations. Luc > #g > -- > -- Professor Luc Moreau Electronics and Computer Science tel: +44 23 8059 4487 University of Southampton fax: +44 23 8059 2865 Southampton SO17 1BJ email: l.moreau@ecs.soton.ac.uk United Kingdom http://www.ecs.soton.ac.uk/~lavm
Received on Tuesday, 9 April 2013 11:08:58 UTC