W3C home > Mailing lists > Public > public-prov-wg@w3.org > January 2013

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

From: Paul Groth <pgroth@gmail.com>
Date: Thu, 31 Jan 2013 13:56:03 +0100
Message-ID: <CAJCyKRp2eWeDaFQRVSoCW3_=Sz3jHZ34B1ckSXL8E1UzvSiFcg@mail.gmail.com>
To: Stephan Zednik <zednis@rpi.edu>
Cc: Hook Hua <hook.hua@jpl.nasa.gov>, Luc Moreau <L.Moreau@ecs.soton.ac.uk>, Provenance Working Group <public-prov-wg@w3.org>
For me it does.

Thanks
Paul


On Wed, Jan 30, 2013 at 7:08 PM, Stephan Zednik <zednis@rpi.edu> wrote:

> Paul, Luc
>
> Do the updates to the schema and the Note documentation resolve this issue?
>
> Thanks,
> --Stephan
>
> On Jan 14, 2013, at 6:41 PM, Stephan Zednik <zednis@rpi.edu> wrote:
>
> > I have committed changes to the editors draft of the PROV-XML Note to
> reflect the changes to the schema.
> >
> > changeset: https://dvcs.w3.org/hg/prov/rev/46e10eeaa3ef
> >
> > editors draft:
> https://dvcs.w3.org/hg/prov/raw-file/46e10eeaa3ef/xml/prov-xml.html
> >
> > --Stephan
> >
> > On Jan 14, 2013, at 2:55 PM, Stephan Zednik <zednis@rpi.edu> wrote:
> >
> >> I have updated the PROV schema with new elements and complex types that
> reflect PROV-defined specializations of entity (bundle, collection, empty
> collection, plan), agent (person, organization, software agent) and
> derivation (quotation, revision, primary source).
> >>
> >> You can now define a prov:Person with the following XML:
> >>
> >> <prov:person prov:id="ex:Paolo" />
> >>
> >> The old manner of defining a prov:Person (and all other types affected
> by this update) is still valid.
> >>
> >> <prov:agent prov:id="ex:Paolo">
> >>   <prov:type xsi:type="xsd:QName">prov:Person</prov:type>
> >> </prov:agent>
> >>
> >> Similar updates have been made for bundle, collection, empty collection
> , plan, organization, software agent, quotation, revision, and primary
> source.
> >>
> >> In the case of quotation, revision, and primary source the XML elements
> have been named to align with PROV-O.
> >>
> >> <xs:element name="wasRevisionOf"        type="prov:Revision"/>
> >> <xs:element name="wasQuotedFrom"        type="prov:Quotation"/>
> >> <xs:element name="hadPrimarySource"     type="prov:PrimarySource"/>
> >>
> >> Change-set to PROV-XML schema
> >>
> >> https://dvcs.w3.org/hg/prov/rev/fb3e3ef40222
> >>
> >> Change-set to PROV-XML example files
> >>
> >> https://dvcs.w3.org/hg/prov/rev/33a576fb0b32
> >>
> >> The editors draft of the PROV-XML note has not yet been updated, but I
> intend to have it updated before this week's telecon.
> >>
> >> --Stephan
> >>
> >> On Nov 21, 2012, at 5:00 PM, "Hua, Hook (388C)" <hook.hua@jpl.nasa.gov>
> wrote:
> >>
> >>> Hi Stephan and Luc,
> >>>
> >>> If we end up supporting both ways (three if you count Luc's one-liner
> >>> attribute way), then it may leave some variability of validation in the
> >>> different approaches.
> >>>
> >>> For example, with the <prov:wasRevisionOf> approach, it can be
> explicitly
> >>> validated by code ingesting the XML traces since the type is expressed
> in
> >>> the XSD.
> >>>
> >>> But with the <prov:type xsi:type="xsd:QName">prov:Revision</prov:type>
> >>> approach, the type value is currently left open as an xs:anySimpleType.
> >>>
> >>> Since we are explicitly defining an <prov:wasRevisionOf>, should we
> then
> >>> define a matching set of restriction constraints on <prov:type> ? For
> >>> example, a simpleType restriction with enumerations that match the
> >>> explicit extensions:
> >>>
> >>> <xs:complexType name="Derivation">
> >>>  <xs:sequence>
> >>>    <xs:element name="generatedEntity"  type="prov:EntityRef"/>
> >>>    <xs:element name="usedEntity"       type="prov:EntityRef"/>
> >>>    <xs:element name="activity"         type="prov:ActivityRef"
> >>> minOccurs="0"/>
> >>>    <xs:element name="generation"       type="prov:GenerationRef"
> >>> minOccurs="0"/>
> >>>    <xs:element name="usage"            type="prov:UsageRef"
> >>> minOccurs="0"/>
> >>>    <xs:choice minOccurs="0" maxOccurs="unbounded">
> >>>      <xs:element ref="prov:label"/>
> >>>      <xs:element ref="prov:type">
> >>>          <xs:simpleType>
> >>>              <xs:restriction base="xs:anySimpleType">
> >>>                  <xs:enumeration
> value="prov:Revision"></xs:enumeration>
> >>>              </xs:restriction>
> >>>          </xs:simpleType>
> >>>      </xs:element>
> >>>      <xs:any namespace="##other"/>
> >>>    </xs:choice>
> >>>  </xs:sequence>
> >>>  <xs:attribute ref="prov:id"/>
> >>> </xs:complexType>
> >>>
> >>> <xs:element name="wasDerivedFrom" type="prov:Derivation"/>
> >>>
> >>>
> >>> --Hook
> >>>
> >>>
> >>>
> >>>
> >>> On 11/19/12 10:33 PM, "Luc Moreau" <L.Moreau@ecs.soton.ac.uk> wrote:
> >>>
> >>>> Hi Stephan,
> >>>>
> >>>> I think I concur with your conclusion: it may end up making tooling
> >>>> complex. Plus, the third way of writing things:
> >>>>
> >>>> <proc:agent xsi:type="prov:Person" prov:id="ex:e"/>
> >>>>
> >>>> Professor Luc Moreau
> >>>> Electronics and Computer Science
> >>>> University of Southampton
> >>>> Southampton SO17 1BJ
> >>>> United Kingdom
> >>>>
> >>>>>>>
> >>>>>>> <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>
> >>>>>>>
> >>>>>>>
> >>>
> >>>
> >>>>>>>
> >>>
> >>>
> >>>
> >>
> >>
> >>
> >
> >
> >
>
>
>
Received on Thursday, 31 January 2013 12:56:31 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:51:28 UTC