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

On Mon, Feb 25, 2013 at 2:54 PM, Stephan Zednik <> wrote:
> The implication is that xsi:type can be used to specify the type of an element for validation purposes
> This is defined by XML Schema and is not something we are adding extra meaning to.

So it does not also append prov:type 'ex:Workflow' to the PROV-DM
statements loaded from that PROV-XML?

> What do you mean technically by "don't understand my schema"?

I mean a PROV consumer who can see and load your schema, but has no
programmatic understanding of anything beyond PROV-XML. Let's say this
consumer is to output PROV-N.

> For the following xml snippet:
> <prov:plan prov:id="foo" xsi:type="ex:Workflow" />
> If the schema that defines ex:Workflow is not known (namespace "ex" is not defined) the xml will not validate because the namespace "ex" is not defined.


> If the namespace/schema are known and ex:Workflow is an extension of prov:Plan than the xml will validate.

I am less concerned now about the XML validation; as that's known
territory. What I wonder about is the semantics of using an XML
extension of a complex type and/or xsi:type.

So let's say we have:

 <prov:entity prov:id="foo" xsi:type="ex:Workflow" />

and in the schema the complex type ex:Workflow extends the prov:Plan
complex type.

Let's say the PROV-XML consumer can fully load the schema and the XML
validates perfectly, and then saves the PROV statements as PROV-N.

Would you expect then to find in the PROV-N:

  entity(foo, prov:type='ex:Workflow')

and more importantly the inferred:

  entity(foo, prov:type='prov:Plan')


Stian Soiland-Reyes, myGrid team
School of Computer Science
The University of Manchester

Received on Monday, 25 February 2013 16:08:50 UTC