Difference between revisions of "Prov-XML Identifiers"

From Provenance WG Wiki
Jump to: navigation, search
(Advantages)
(Contraints)
Line 12: Line 12:
  
 
: Values of type ID must match the Name production. A name must not appear more than once in an XML document as a value of this type; i.e., ID values must uniquely identify the elements which bear them.
 
: Values of type ID must match the Name production. A name must not appear more than once in an XML document as a value of this type; i.e., ID values must uniquely identify the elements which bear them.
 +
  
 
: '''Validity constraint: One ID per Element Type'''
 
: '''Validity constraint: One ID per Element Type'''
  
 
: No element type may have more than one ID attribute specified.
 
: No element type may have more than one ID attribute specified.
 +
  
 
: '''Validity constraint: ID Attribute Default'''
 
: '''Validity constraint: ID Attribute Default'''
  
 
: An ID attribute must have a declared default of #IMPLIED or #REQUIRED.
 
: An ID attribute must have a declared default of #IMPLIED or #REQUIRED.
 +
  
 
: '''Validity constraint: IDREF'''
 
: '''Validity constraint: IDREF'''

Revision as of 19:04, 17 January 2013

Discussions on how to represent identifiers (prov:id) in PROV-XML

Options regarding the type of the prov:id and prov:ref xml attributes

Using xs:ID for prov:id and xs:IDRef for prov:ref

Contraints

Validity constraint: ID
Values of type ID must match the Name production. A name must not appear more than once in an XML document as a value of this type; i.e., ID values must uniquely identify the elements which bear them.


Validity constraint: One ID per Element Type
No element type may have more than one ID attribute specified.


Validity constraint: ID Attribute Default
An ID attribute must have a declared default of #IMPLIED or #REQUIRED.


Validity constraint: IDREF
Values of type IDREF must match the Name production, and values of type IDREFS must match Names; each Name must match the value of an ID attribute on some element in the XML document; i.e. IDREF values must match the value of some ID attribute.

Advantages

  1. xs:ID recognized by XML tools as an identifier type
  2. xs:IDRef recognized by XML tools as a reference to an identified element
  3. ID uniqueness constraint (document scope only)

Disadvantages

  1. ID and IDRef have a base type of NCName
    1. cannot contain colons, whitespaces, or start with numbers
    2. URIs and qualified names are not valid IDs because both contain colons.
  2. Requiring unique IDs may cause problems with bundles

xs:QName/xs:QName

xs:anyURI/xs:anyURI