- From: Stephan Zednik <zednis@rpi.edu>
- Date: Thu, 20 Dec 2012 10:52:21 -0700
- To: Luc Moreau <l.moreau@ecs.soton.ac.uk>
- Cc: Curt Tilmes <Curt.Tilmes@nasa.gov>, "public-prov-wg@w3.org" <public-prov-wg@w3.org>
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> 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>> 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>>
>>>>>>
>>>>>> 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>
>>>>> 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 Kingdomhttp://www.ecs.soton.ac.uk/~lavm
>
> --
> 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 Thursday, 20 December 2012 17:52:48 UTC