We should turn facets into URIs in the spec

Hello,

Peter has just detected an inconsistency in my resolution of ISSUE-71. The problem is that all facets are turned into xsd:<facet
name>, which puts the langPattern facet into the xsd: namespace -- probably not what we want.

Luckily, there is an easy fix to this: we should turn facets into URIs. The new XML Schema Datatypes document
(http://www.w3.org/TR/xmlschema11-2/#built-in-datatypes) explicitly says that each facet is identified by a URI. Thus, we should
obey this convention and adapt our spec accordingly; this will immediately resolve the mapping issues.

Concretely, this means that instead of writing

    DatatypeRestriction( xsd:integer minIncusive "10"^^xsd:integer)

we should write

    DatatypeRestriction( xsd:integer xsd:minIncusive "10"^^xsd:integer)

This will require a small change to the syntax (and the XML Syntax as well). The URIs of these facets would be placed into the
reserved vocabulary, which will prevent any problems with the declarations. Finally, the RDF Mapping would be modified to use the
URI of the facet as is, without putting it explicitly into the xsd: namespace.


I believe this to be a relatively low-level problem that can be treated as being editorial. Hence, unless anyone objects, I'd go
ahead and make this change in the following days. Please let me know if you disagree with this proposal.

Regards,

	Boris

Received on Monday, 22 September 2008 15:33:50 UTC