[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] XPath 2.0 Best Practice Issue: Graceful Degradation
- From: noah_mendelsohn@us.ibm.com
- To: Philippe Poulard <philippe.poulard@sophia.inria.fr>
- Date: Wed, 30 Jan 2008 10:43:41 -0500
Philippe Poulard writes:
> Schema technologies were primarily designed to express constraints
> on XML document classes.
To add a bit more detail, the following is the text of the section of the
Schema Recommendation that describes the purpose of a schema [1]
"The purpose of XML Schema: Structures is to define the nature of XML
schemas and their component parts, provide an inventory of XML markup
constructs with which to represent schemas, and define the application of
schemas to XML documents.
The purpose of an XML Schema: Structures schema is to define and describe
a class of XML documents by using schema components to constrain and
document the meaning, usage and relationships of their constituent parts:
datatypes, elements and their content and attributes and their values.
Schemas may also provide for the specification of additional document
information, such as normalization and defaulting of attribute and element
values. Schemas have facilities for self-documentation. Thus, XML Schema:
Structures can be used to define, describe and catalogue XML vocabularies
for classes of XML documents.
Any application that consumes well-formed XML can use the XML Schema:
Structures formalism to express syntactic, structural and value
constraints applicable to its document instances. The XML Schema:
Structures formalism allows a useful level of constraint checking to be
described and implemented for a wide spectrum of XML applications.
However, the language defined by this specification does not attempt to
provide all the facilities that might be needed by any application. Some
applications may require constraint capabilities not expressible in this
language, and so may need to perform their own additional validations."
> Unfortunately, schema technologies are still trailing behind. (One
> of) the missing feature(s) is the support of semantics data types.
See those last two sentences in the "purpose" section. It's not at all
clear to me that Schema structures is the right place to go after these
semantic types, except insofar as the existing ability to define named
types, and inheritance hierarchies in which both the intensional
refinement of a type (I.e. it's base type chain) as well as its
extensional refinement (a restriction allows no more than its base)
matter. To make that last bit clearer, what I'm trying to say is, you can
have two vacuous restrictions of integer, one named "employeeAge" and one
named "partNumber". They both accept the same numbers, but you can't put
xsi:type="partNumber" on an element that's expecting an "employeeAge".
That's what I meant by intensional as well as extensional, and it takes
you just a bit of the way toward semantic typing.
Noah
[1] http://www.w3.org/TR/2004/PER-xmlschema-1-20040318/#intro-purpose
--------------------------------------
Noah Mendelsohn
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]