Re: Multiple XML schema files for a common target namespace (PROV-ISSUE-608)

hi Stain,

I have updated the bundle text based on your feedback.

https://dvcs.w3.org/hg/prov/rev/23df88c5f810

Thanks,
--Stephan

On Feb 14, 2013, at 9:57 AM, Stephan Zednik <zednis@rpi.edu> wrote:

> Thanks Stian.
> 
> Good suggestions on the text edits.  I will make the updates today.
> 
> --Stephan
> 
> On Feb 14, 2013, at 8:37 AM, Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk> wrote:
> 
>> It looks good!
>> 
>> I've updated and tested the examples at
>> https://dvcs.w3.org/hg/prov/file/59d3339f4090/xml/examples which all
>> validate.
>> 
>> <foaf:name> now works great - a downside is that any unknown elements
>> in a schemaed non-prov namespace is allowed as well, like:
>> <dcterms:madeup>Oh oh</dcterms:madeup>
>> 
>> (I thought this was not allowed in 'lax' when the schema for a
>> namespace was known, but perhaps Eclipse is being silly.) Anyway I
>> think it's a compromise that is worthwhile.  It still fails if I go
>> against a custom type - like on line 31 in:
>> 
>> https://dvcs.w3.org/hg/prov/file/59d3339f4090/xml/examples/custom-example.xml#l31
>> 
>> 
>> I would change the intro slightly:
>> 
>>> A prov:Bundle is an extension of prov:Entity that can be associated with a set of nested provenance statements, which is represented by the prov:BundleConstructor complexType and referenced with the prov:bundleContent element. Provenance statements may be made about the set by referencing the associated entity.
>> 
>> to
>> 
>> "A prov:Bundle identifies a set of provenance descriptions, and is an
>> extension of prov:Entity, so allowing provenance of provenance to be
>> expressed by referencing the associated entity. The content of a
>> bundle, ie. its provenance records, can be represented by the
>> prov:BundleConstructor complexType and can be specified with the
>> prov:bundleContent element, its prov:id corresponds to the bundle
>> entity."
>> 
>> 
>> (What I want to imply is that you can use either <prov:bundle> or
>> <prov:bundleContent> or, ideally, both. )
>> 
>> 
>> 
>> Later:
>> 
>>> The element prov:bundleContent is used to reference a set of nested provenance statements from within a prov:Document.
>> 
>> 
>> Then we should probably add something like:
>> 
>> "Although bundle content can only be represented at <prov:document>
>> level, the corresponding bundle entities may be specified at any
>> <prov:bundle> nesting level, if at all."
>> 
>> 
>> 
>> On Thu, Feb 14, 2013 at 6:12 AM, Stephan Zednik <zednis@rpi.edu> wrote:
>>> Yes.
>>> 
>>> --Stephan
>>> 
>>> On Feb 13, 2013, at 11:02 PM, Luc Moreau <L.Moreau@ecs.soton.ac.uk> wrote:
>>> 
>>>> Thanks Stephan. Is the document ready or review?
>>>> 
>>>> Professor Luc Moreau
>>>> Electronics and Computer Science
>>>> University of Southampton
>>>> Southampton SO17 1BJ
>>>> United Kingdom
>>>> 
>>>> On 14 Feb 2013, at 00:21, "Stephan Zednik" <zednis@rpi.edu> wrote:
>>>> 
>>>>> Hi Luc,
>>>>> 
>>>>> Because time is running down on getting the PROV-XML Note ready for the next release I went ahead and updated the editors draft with the discussed changes.
>>>>> 
>>>>> https://dvcs.w3.org/hg/prov/raw-file/default/xml/prov-xml.html
>>>>> 
>>>>> I have added sections to the design patterns section concerning the schema modularity and the conventions on type information.
>>>>> 
>>>>> https://dvcs.w3.org/hg/prov/raw-file/default/xml/prov-xml.html#schema-modularization
>>>>> https://dvcs.w3.org/hg/prov/raw-file/default/xml/prov-xml.html#type-conventions
>>>>> 
>>>>> I have also update the Bundles section with the design that Stian and I have most recently been discussing and which I think will be satisfactory to you.  I did rename the element to bundleContent as Stian suggested because it reads much better than bundleConstructor.
>>>>> 
>>>>> https://dvcs.w3.org/hg/prov/raw-file/default/xml/prov-xml.html#component4
>>>>> 
>>>>> Please let me know if you would like me to change anything.  I tried to make the text in the bundle section clear but it's wording may not align with your interpretation.
>>>>> 
>>>>> I have also made several other update to the document including updating the SOTD section, please refer to the Change Log section at the bottom for a summary of changes.
>>>>> 
>>>>> --Stephan
>>>>> 
>>>>> On Feb 13, 2013, at 9:43 AM, Stephan Zednik <zednis@rpi.edu> wrote:
>>>>> 
>>>>>> How about the following changes? More discussion of the bundleConstructor referencing element name below.
>>>>>> 
>>>>>> <xs:complexType name="Bundle">
>>>>>> <xs:complexContent>
>>>>>>  <xs:extension base="prov:Entity">
>>>>>>  </xs:extension>
>>>>>> </xs:complexContent>
>>>>>> </xs:complexType>
>>>>>> 
>>>>>> <xs:complexType name="BundleConstructor">
>>>>>> <xs:sequence maxOccurs="unbounded">
>>>>>>     <xs:group ref="prov:documentElements"/>
>>>>>>     <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
>>>>>> </xs:sequence>
>>>>>> <xs:attribute ref="prov:id"/>
>>>>>> </xs:complexType>
>>>>>> 
>>>>>> <xs:element name="document" type="prov:Document" />
>>>>>> <xs:complexType name="Document">
>>>>>> <xs:sequence maxOccurs="unbounded">
>>>>>>    <xs:group ref="prov:documentElements" minOccurs="0"/>
>>>>>>     <xs:element name="bundleConstructor" type="prov:BundleConstructor" minOccurs="0"/>
>>>>>>    <xs:any namespace="##other" processContents="lax" minOccurs="0" />
>>>>>> </xs:sequence>
>>>>>> </xs:complexType>
>>>>>> 
>>>>>> The group prov:documentElements does not contain a reference to prov:BundleConstructor.
>>>>>> 
>>>>>> 
>>>>>> On Feb 13, 2013, at 2:50 AM, Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk> wrote:
>>>>>> 
>>>>>>> On Wed, Feb 13, 2013 at 8:19 AM, Luc Moreau <l.moreau@ecs.soton.ac.uk> wrote:
>>>>>>>> In section 5.4.2,
>>>>>>>> http://www.w3.org/TR/2012/CR-prov-dm-20121211/#term-bundle-entity, you will
>>>>>>>> see the sentence:
>>>>>>>> 
>>>>>>>> A bundle description is of the form entity(id, [ prov:type='prov:Bundle',
>>>>>>>> attr1=val1, ...] )
>>>>>>>> 
>>>>>>>> I therefore think it would be very confusing to use the term
>>>>>>>> bundleDescriptions to refer to the constructor of section 5.4.1
>>>>>>> 
>>>>>>> Agreed.
>>>>>>> 
>>>>>>> 
>>>>>>>> A bundle constructor ◊ allows the content and the name of a bundle to be specified
>>>>>>> 
>>>>>>> what about <bundleContent> then?  I think that should make distinction
>>>>>>> with <bundle> obvious, more so than the 'constructor' which you would
>>>>>>> have to read PROV-DM with a lens to understand.
>>>>>>> 
>>>>>>> 
>>>>>>> Thus in a way everything in PROV-XML is a description, <bundle> is a
>>>>>>> bundle description, and <bundleContent> describes the content of the
>>>>>>> bundle (ie. further PROV statements).
>>>>>> 
>>>>>> With the modeling suggestion above I use prov:bundleConstructor, but like Stian I am not a big fan of how it reads in XML.
>>>>>> 
>>>>>> I like the following (in order of preference):
>>>>>> 
>>>>>> bundleContent
>>>>>> bundleRecords
>>>>>> bundleStatements
>>>>>> 
>>>>>> --Stephan
>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> --
>>>>>>> Stian Soiland-Reyes, myGrid team
>>>>>>> School of Computer Science
>>>>>>> The University of Manchester
>> 
>> 
>> 
>> -- 
>> Stian Soiland-Reyes, myGrid team
>> School of Computer Science
>> The University of Manchester
>> 
>> 
> 
> 

Received on Thursday, 14 February 2013 19:11:18 UTC