Lists Home |
Date Index |
On Tue, Jun 11, 2002 at 10:10:15AM -0400, John Cowan wrote:
>Amelia A Lewis scripsit:
>> So, is it better to define a type in XML as something that can be
>> validated, or as something that maps to type A in language Z, type B in
>> language Y, type A again in language X, and type L in language O?
>How did this get to be about the *definition* of types? I thought it
>was about the *utility* of types, or more precisely type assignment.
*shrug* I'd like to see a type system for simple types in XML. I don't
think that XSDL is it, having used it for the past year or two. I don't
think it's it because it is officially (per specification) impossible to
create new primitive types, and because the type hierarchy supplied is
highly problematic (internally inconsistent and incomplete, as well as
inappropriate for some application domains).
It follows that the first question to ask is "what is a type?" Structural
data types (elements) define or are defined by the validation applied to
them, I would argue. I would further assert that binding to
language-specific classes and structures depends upon the validation, but
that no current XML schema language mandates a particular binding.
It then follows that simple types define, or are defined by the validation
applied to them. Therefore, to create a data library definition language
(which is what I think XML Schema part two should have been), one needs to
create a language capable of describing validation algorithms.
If in fact language binding is a significant part of how a simple type is
defined, the problem grows much larger, and may only be soluble by Decrees
From On High, in the style of XSDL part two. I don't believe that this is
the case, based on the parallel with complex types, for which XML
specifications provide validation rules, and per-language binding
specifications provide binding rules predicated on the prior fulfillment of
the XML specifications.
Or, in a nutshell: I think that XSDL's data type definitions for simple
types are inadequate. They need to be replaced. A replacement should,
however, be "pluggable" (not one data type library for everyone, but the
data type libraries that this schema/application needs), and should be
constructed from first principles on an extensible basis in order to avoid
the problems plaguing XSDL's data type library definition.
Amelia A. Lewis email@example.com firstname.lastname@example.org
What's the end of a story? When you begin telling it.
-- Ursula K. Le Guin