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

Hi

My 2p contribution to the debate. I think this makes the schema much less readable.
What does it give us? We have structured core/links/dictionary in different files. It's nice, but the benefits do not outweigh the drawbacks.

Furthermore, i haven't had the time to see the effect of this schema on tools such as jaxb and ORMs. I fear non natural mappings will result. Has anybody got experience?

I would be in favour of a single file containing all the terms of the prov namespace (from an XML perspective).

Professor Luc Moreau
Electronics and Computer Science
University of Southampton
Southampton SO17 1BJ
United Kingdom

On 5 Feb 2013, at 00:32, "Stephan Zednik" <zednis@rpi.edu<mailto:zednis@rpi.edu>> wrote:

This is a reminder to the workgroup that this issue has not been resolved by the group.  The PROV-XML team has implemented a solution based on the "substitution groups and abstract elements" pattern as elaborated by Stian at http://www.w3.org/2011/prov/wiki/ProvXMLNamespaces#Substitution_groups_and_abstract_elements.

The prov-dictionary and prov-links schemas have been updated to reflect the current strategy

https://dvcs.w3.org/hg/prov/file/tip/xml/schema/extensions/prov-dictionary.xsd
https://dvcs.w3.org/hg/prov/file/tip/xml/schema/extensions/prov-links.xsd

Both extension schemas include the prov-core schema and use substitutionGroup to extend the prov:abstractElement abstract element.

prov.xsd includes the core schema and all extension schemas.

The schemaLocation attribute can be used to specify a specific schema if a user does not wish to use the prov.xsd schema which references all extension schemas the WG is developing.  I will add a section on the schema organization and how to specify alternate schemas to the editors draft of the note on Tuesday.

Thoughts?  If there are no immediate questions I would like to move this to a straw poll to resolve the issue.

--Stephan

On Jan 23, 2013, at 1:20 PM, Stephan Zednik <zednis@rpi.edu<mailto:zednis@rpi.edu>> wrote:

I have committed a refactoring of the prov-xml schemas following the "substitution groups and abstract elements" pattern described by Stian in http://www.w3.org/2011/prov/wiki/ProvXMLNamespaces#Substitution_groups_and_abstract_elements

All schemas utilize the http://www.w3.org/ns/prov# target namespace.

I ask the group to please review the XML Namespace wiki page Stian created (link above) and our implementation of the "substitution groups and abstract elements" pattern.

changeset:
https://dvcs.w3.org/hg/prov/rev/ddc3e7cd2e94

The dependency hierarchy of the PROV-XML generated schemas is now:

prov.xsd
- prov-core.xsd
- extensions/prov-dictionary.xsd
-- prov-core.xsd
- extensions/prov-links.xsd
-- prov-core.xsd

note - prov.xsd does not technically need to include prov-core.xsd since both of the extensions already include it, but I added the include so the existence of prov-core.xsd is clear in prov.xsd.

The content of the extension schemas should not be considered final.  I invite members of the links and dictionary note to review the extension schemas and provide feedback.

All current XML serialization examples in eg-40 validate successfully with the refactored schema layout.  The PROV-XML group will be adding additional tests today for the extensions.

--Stephan

On Jan 17, 2013, at 10:12 AM, Stephan Zednik <zednis@rpi.edu<mailto:zednis@rpi.edu>> wrote:

Hi Stian,

The PROV-XML group will look into a solution that follows this pattern.

--Stephan

On Dec 6, 2012, at 9:54 AM, Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk<mailto:soiland-reyes@cs.manchester.ac.uk>> wrote:

I've added some code example of my proposed solution at

http://dvcs.w3.org/hg/prov/file/6113b10ac714/xml/experimental/extensions

See description of this folder here:

http://www.w3.org/2011/prov/wiki/ProvXMLNamespaces#Experimental_example

On Thu, Dec 6, 2012 at 4:20 PM, Stian Soiland-Reyes
<soiland-reyes@cs.manchester.ac.uk<mailto:soiland-reyes@cs.manchester.ac.uk>> wrote:
I've tested and found it to be easy to do several schemas in the same
namespace as long as they just <xsi:include> each-other.


So you can have an hierarchy of imports like:

prov.xsd
-- imports core.xsd
-- imports collection.xsd
---- imports core.xsd
-- imports links.xsd
---- imports core.xsd

and so the top-level prov.xsd simply includes 2-3 <xsd:imports> of the
underlying components.


As far as I could figure it out, it means in the extensions the
easiest way to 'fit in' would be to use abstract elements and
substitution groups.

See   http://www.w3.org/2011/prov/wiki/ProvXMLNamespaces for a
discussion of the different alternatives.

I've also got some test-schemas with this working, but I have not
committed them yet as they are on a different machine.


On Fri, Nov 30, 2012 at 3:34 PM, Stian Soiland-Reyes
<soiland-reyes@cs.manchester.ac.uk<mailto:soiland-reyes@cs.manchester.ac.uk>> wrote:
Tracker, this is PROV-ISSUE-608

On Fri, Nov 30, 2012 at 3:29 PM, Stian Soiland-Reyes
<soiland-reyes@cs.manchester.ac.uk<mailto:soiland-reyes@cs.manchester.ac.uk>> wrote:
They are usually application/xml.

On Thu, Nov 29, 2012 at 6:22 PM, Timothy Lebo <lebot@rpi.edu<mailto:lebot@rpi.edu>> wrote:
prov-wg,

Is there a mime type for xml schema?
Or, should we just use "application/xml"?

I'd like to add it to http://www.w3.org/2011/prov/wiki/ProvNamespaceManagement#Intro

Thanks,
Tim


On Nov 29, 2012, at 12:58 PM, Graham Klyne <GK@ninebynine.org<mailto:GK@ninebynine.org>> wrote:

Following the teleconference, I did a little digging, and my understanding is that it *is* possible to have a schema for a common target namerspace build from a number of separate schema files:

http://www.w3.org/TR/xmlschema-1/#compound-schema

By my reading, what you *cannot* do is have a single schema composed from multiple "sub-schema" defining terms in different target namespaces.

#g
--







--
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



--
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 Tuesday, 5 February 2013 06:38:08 UTC