- From: Paolo Missier <Paolo.Missier@ncl.ac.uk>
- Date: Fri, 21 Dec 2012 09:18:43 +0000
- To: public-prov-wg@w3.org
HadEntityWithKey?
I also agree with the ternary relation solution
-Paolo
On 21/12/2012 08:19, Luc Moreau wrote:
> Hi Tom
> I agree with your analysis. Looks like we are back to a ternary relation.
> I would think about its name though. HadIndexedMember? HadKeyedMember?
>
> Professor Luc Moreau
> Electronics and Computer Science
> University of Southampton
> Southampton SO17 1BJ
> United Kingdom
>
> On 21 Dec 2012, at 06:14, "Tom De Nies" <tom.denies@ugent.be<mailto:tom.denies@ugent.be>> wrote:
>
>
> Hello all, thanks for your feedback so far.
>
> I think it's important to remark that hadMember for a Dictionary is fundamentally different than for Collection.
> To me, it's crucial that we associate the key with the membership relation, rather than with the entity, as Curt suggested.
> The suggestions using specialization seem like overkill to me, and will just throw off any users that were considering PROV-Dictionary.
> It's a pity really that hadMember can't have any additional attributes, even when we're designing an extension to PROV-DM, because for me, the following would be perfect:
>
> entity(d1, [prov:type="prov:Dictionary"])
> entity(e1)
> hadMember(d1, e1, [prov:key="k1"])
>
> If we can't do that, I suggest we introduce something along the lines of the following:
>
> entity(d1, [prov:type="prov:Dictionary"])
> entity(e1)
> hadKeyEntity(d1, e1, [prov:key="k1"])
>
> and then add the following inference to the constraints:
> IF hadKeyEntity(d1, e1, [prov:key="k1"]) THEN hadMember(d1, e1)
>
> Any thoughts on this?
>
> - Tom
>
>
> 2012/12/20 Stephan Zednik <zednis@rpi.edu<mailto:zednis@rpi.edu>>
> I believe Tim and myself had discussed a similar line of reasoning to what Curt is suggesting when we were trying to see how Dictionary membership could work in PROV-O (before Dictionary was split out into its own note).
>
> We were at the time trying to use a unified non-qualified membership relation that worked for dictionaries as well as general collections. In PROV-O this lead to the question of where does the key information reside?
>
> Right now I like the idea of
>
> hadMember(d1, e1, "k1")
>
> The dictionary note can define the attribute prov:dictKey which is used in a membership relation when the collection is a dictionary. We may want to define a new relation such as hadDictionaryMember( ) so we are not overloading the existing membership relation.
>
> I am still not completely sure about what to do with unqualified dictionary membership properties in PROV-O. Perhaps one is simply not defined for dictionaries?
>
> --Stephan
>
> On Dec 20, 2012, at 8:24 AM, Luc Moreau <l.moreau@ecs.soton.ac.uk<mailto:l.moreau@ecs.soton.ac.uk>> wrote:
>
>> It would work, but feels heavy.
>>
>> I personally prefer the original design.
>>
>> Luc
>>
>> On 12/20/2012 03:17 PM, Curt Tilmes wrote:
>>> Specialization?
>>>
>>> entity(d1, [prov:type='prov:Dictionary'])
>>> entity(d2, [prov:type='prov:Dictionary'])
>>>
>>> entity(e1)
>>>
>>> specializationOf(e1_1, e1)
>>> entity(e1_1, [prov:key='k1'])
>>> hadMember(d1, e1_1)
>>>
>>> specializationOf(e1_2, e1)
>>> entity(e1_2, [prov:key='k2'])
>>> hadMember(d2, e1_2)
>>>
>>> Gets kind of ugly though..
>>>
>>> Curt
>>>
>>> On 12/20/2012 09:49 AM, Luc Moreau wrote:
>>>> Hi Curt,
>>>>
>>>> What if e1 belongs to two dictionaries, with keys k1 and k2, respectively?
>>>>
>>>> Luc
>>>>
>>>> On 12/20/2012 02:44 PM, Curt Tilmes wrote:
>>>>> hadMember(c,e) can't have additional attributes or other arguments.
>>>>>
>>>>> You could do something like:
>>>>>
>>>>> entity(d, [prov:type='prov:Dictionary'])
>>>>> entity(e1, [prov:key='k1'])
>>>>> hadMember(d, e1)
>>>>>
>>>>> This adds prov:key to the 'prov:' namespace, but that should be ok,
>>>>> since we've said Notes can do so.
>>>>>
>>>>> We could make it a little more specific to Dictionaries with
>>>>> "prov:dictkey='k1'".
>>>>>
>>>>>
>>>>> I'm also not sure what to do with multiple membership like:
>>>>>
>>>>> d = [(k1, e1), (k2, e1)]
>>>>>
>>>>> (Just give it two "prov:key"s?)
>>>>>
>>>>> Curt
>>>>>
>>>>> On 12/20/2012 09:23 AM, Tom De Nies wrote:
>>>>>> Hello Luc,
>>>>>>
>>>>>> I understand your concern, and it's something we can address before
>>>>>> proceeding. During the last telecon, we motivated our desire to redesign
>>>>>> the original memberOf relation of Dictionary. Basically, we'd like
>>>>>> consistency with Collection membership.
>>>>>>
>>>>>> Would the notation hadMember(d1, e1, "k1") address you concern? (without
>>>>>> the brackets)
>>>>>> In essence, this adds one attribute to the Collection membership for
>>>>>> Dictionary. It also would mean minimal changes througout the document.
>>>>>>
>>>>>> Tom
>>>>>>
>>>>>> On Dec 20, 2012 3:07 PM, "Luc Moreau" <l.moreau@ecs.soton.ac.uk<mailto:l.moreau@ecs.soton.ac.uk>
>>>>>> <mailto:l.moreau@ecs.soton.ac.uk<mailto:l.moreau@ecs.soton.ac.uk>>> wrote:
>>>>>>
>>>>>> Hi Tom and Sam,
>>>>>>
>>>>>> Sorry for the delay.
>>>>>> I have some concerns about the proposed membership relation.
>>>>>>
>>>>>> PROV requires members of a collection to be entities.
>>>>>> http://www.w3.org/TR/2012/CR-prov-dm-20121211/#concept-collection
>>>>>>
>>>>>> Given this, your relation
>>>>>> hadMember(d, ("k1", e1))
>>>>>> seems to indicate that ("k1",e1) is also an entity.
>>>>>>
>>>>>> It's not how I had initially envisaged this to work. I see e1 as an
>>>>>> entity
>>>>>> belonging to the dictionary d, with "k1" it's key.
>>>>>> So, in my view, we have:
>>>>>> hadMember(d,e1)
>>>>>> but not
>>>>>> hadMember(d,("k1",e1))
>>>>>>
>>>>>> If ("k1",e1) is an entity, what is its identifier?
>>>>>>
>>>>>> Grammatically, hadMember(d,("k1",e1)) is not compatible with the
>>>>>> prov-n notation, since the second argument of hadMember has to
>>>>>> be a qualified name (the identity of the member).
>>>>>>
>>>>>> To me, it's important that we address this issue, before going into
>>>>>> a review.
>>>>>>
>>>>>> Luc
>>>>>>
>>>>>>
>>>>>> On 12/18/2012 04:03 PM, Tom De Nies wrote:
>>>>>>> Specific questions we have for reviewers are:
>>>>>>>
>>>>>>> 1. Is the notation of Dictionary concepts clear & acceptable for
>>>>>>> you? (in PROV-N and PROV-O)
>>>>>>> 2. Are the constraints acceptable, or are they too loose/too
>>>>>>> strict?
>>>>>>> 3. Are you happy with the solution to the issue regarding
>>>>>>> completeness? (Tracing back to an EmptyDictionary)
>>>>>>> 4. Is the note ready to be published as FPWD?
>>>>>>>
>>>>>>> We would like to end the internal review after the first week of
>>>>>>> the new year.
>>>>>>>
>>>>>>> Thanks everyone, and happy holidays!
>>>>>>>
>>>>>>> Tom
>>>>>>>
>>>>>>> 2012/12/18 Sam Coppens Ugent <sam.coppens@ugent.be<mailto:sam.coppens@ugent.be>
>>>>>>> <mailto:sam.coppens@ugent.be<mailto:sam.coppens@ugent.be>>>
>>>>>>>
>>>>>>> Hello everybody,
>>>>>>>
>>>>>>> The Dictionary Note
>>>>>>> (http://dvcs.w3.org/hg/prov/raw-file/default/dictionary/prov-dictionary.html)
>>>>>>> has been finalised for review. Feedback on the note is welcome.
>>>>>>> Could everybody also check the authors of the document? If
>>>>>>> someone is missing, let us know.
>>>>>>>
>>>>>>> Thanks a lot!
>>>>>>>
>>>>>>> Best Regards,
>>>>>>>
>>>>>>> Sam & Tom
>>>>>> --
>>>>>> Professor Luc Moreau
>>>>>> Electronics and Computer Science tel:+44 23 8059 4487<tel:%2B44%2023%208059%204487>
>>>>>> <tel:%2B44%2023%208059%204487>
>>>>>> University of Southampton fax:+44 23 8059 2865<tel:%2B44%2023%208059%202865>
>>>>>> <tel:%2B44%2023%208059%202865>
>>>>>> Southampton SO17 1BJ email:l.moreau@ecs.soton.ac.uk<mailto:email%3Al.moreau@ecs.soton.ac.uk>
>>>>>> <mailto:l.moreau@ecs.soton.ac.uk<mailto:l.moreau@ecs.soton.ac.uk>>
>>>>>> United Kingdomhttp://www.ecs.soton.ac.uk/~lavm<http://www.ecs.soton.ac.uk/~lavm>
>> --
>> Professor Luc Moreau
>> Electronics and Computer Science tel: +44 23 8059 4487<tel:%2B44%2023%208059%204487>
>> University of Southampton fax: +44 23 8059 2865<tel:%2B44%2023%208059%202865>
>> Southampton SO17 1BJ email: l.moreau@ecs.soton.ac.uk<mailto:l.moreau@ecs.soton.ac.uk>
>> United Kingdom http://www.ecs.soton.ac.uk/~lavm
>>
>>
>>
>
>
--
----------- ~oo~ --------------
Paolo Missier - Paolo.Missier@newcastle.ac.uk, pmissier@acm.org
School of Computing Science, Newcastle University, UK
http://www.cs.ncl.ac.uk/people/Paolo.Missier
PGP Public key: 0x45596549 - key servers: pool.sks-keyservers.net, subkeys.pgp.net, sks.mit.edu
Received on Friday, 21 December 2012 09:19:13 UTC