Re: ISSUE-595: Prov-xml subtyping needs to be marked in the document

On Nov 19, 2012, at 5:36 PM, Luc Moreau <L.Moreau@ecs.soton.ac.uk> wrote:

> Hi Stephan,
> 
> It looks like a reasonable approach. Can we handle the case where a quotation is also a revision? Or a person also an organisation? ( not sure ths is all very meaningful, but this is valid).

If I remember correctly that was one of the modeling issues that lead us to follow the PROV-N lead on sub-typing.

The following is still valid

<prov:person prov:id="ex:foo" >
  <prov:type xsi:type="xsd:QName">prov:Organization</prov:type>
</prov:person>

I left prov:type as it was so all previous PROV-XML examples are still valid.   The 'a now b' examples from my previous email should be considered equivalent.  We now have two ways of declaring something is a person, revision, quotation, etc. whereas before we only had one.

This seems like it would complicate tooling so I am not sure it as cut-and-dry the best direction as it would first seem.

--Stephan

> 
> Professor Luc Moreau
> Electronics and Computer Science
> University of Southampton 
> Southampton SO17 1BJ
> United Kingdom
> 
> On 20 Nov 2012, at 00:02, "Stephan Zednik" <zednis@rpi.edu> wrote:
> 
>> I have made notes in the PROV-XML Note document that examples of sub-typing are under discussion and may change in the future.
>> 
>> https://dvcs.w3.org/hg/prov/rev/78a059d12dd2
>> 
>> I have also created a copy of the existing schema with new complexTypes and elements for Person, Organization, SoftwareAgent, Collection, EmptyCollection, Plan, Revision, Quotation, and PrimarySource.
>> 
>> https://dvcs.w3.org/hg/prov/raw-file/49d63187fb7f/xml/schema/prov.alt.xsd
>> 
>> This is to address feedback raised on reliance on prov:type to express the above entity and derivation sub-typing.
>> 
>> The new complex types use xs:extension to extend existing complexTypes.  
>> 
>> Two examples:
>> 
>> <xs:complexType name="Person">
>>   <xs:complexContent>
>>     <xs:extension base="prov:Agent">
>>     </xs:extension>
>>   </xs:complexContent>
>> </xs:complexType>
>> 
>> ...
>> 
>> <xs:complexType name="Revision">
>>   <xs:complexContent>
>>     <xs:extension base="prov:Derivation">
>>       <!-- add any additional properties here -->
>>     </xs:extension>
>>   </xs:complexContent>
>> </xs:complexType>
>> 
>> These changes lead to the following simplifications on our XML serialization:
>> 
>> <prov:agent prov:id="ex:Paolo">
>>   <prov:type xsi:type="xsd:QName">prov:Person</prov:type>
>> </prov:agent>
>> 
>> could now be modeled as
>> 
>> <prov:person prov:id="ex:Paolo" />
>> 
>> and
>> 
>> <prov:wasDerivedFrom>
>>   <prov:generatedEntity prov:ref="tr:WD-prov-dm-20111215"/>
>>   <prov:usedEntity prov:ref="tr:WD-prov-dm-20111018"/>
>>   <prov:type xsi:type="xsd:QName">prov:Revision</prov:type>
>> </prov:wasDerivedFrom>
>> 
>> could now be modeled as
>> 
>> <prov:wasRevisionOf>
>>   <prov:generatedEntity prov:ref="tr:WD-prov-dm-20111215"/>
>>   <prov:usedEntity prov:ref="tr:WD-prov-dm-20111018"/>
>> </prov:wasRevisionOf>
>> 
>> What does the group think of this approach?
>> 
>> --Stephan
>> 
>> On Nov 9, 2012, at 11:53 AM, Provenance Working Group Issue Tracker <sysbot+tracker@w3.org> wrote:
>> 
>>> ISSUE-595: Prov-xml subtyping needs to be marked in the document
>>> 
>>> http://www.w3.org/2011/prov/track/issues/595
>>> 
>>> Raised by: 
>>> On product: 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
>> 
> 
> 

Received on Tuesday, 20 November 2012 01:09:37 UTC