[
Lists Home |
Date Index |
Thread Index
]
- To: "Pete Kirkham" <pete.kirkham@baesystems.com>, <xml-dev@lists.xml.org>
- Subject: what 'isa' piece of xml? was Re: [xml-dev] Co-operating with Architectural Forms
- From: "Jonathan Borden" <jborden@mediaone.net>
- Date: Fri, 1 Feb 2002 09:24:28 -0500
- References: <"020201124651Z.WT19677. 23*/PN=Pete.Kirkham/OU=Technical/OU=NOTES/O=BAe MAA/PRMD=BAE/ADMD=GOLD 400/C=GB/"@MHS>
Pete Kirkham wrote:
>
> Paul Prescod wrote:
> > The GI is the name of the type. Of course a name is not the same as the
> > thing. Depending on how you look at the universe the "real type" is a
> > totally abstract construction or a thing defined in a DTD.
>
> Or if you're used to using XMLSchema, then the mapping from tagname/GI to
element
> type is defined by the parent element's element type as well; so you're
aware that
> they are not one_and_the_same.
>
Right, we were talking about XML 1.0's definition of 'type'. XML Schema's
(and RELAXNG's equivalent for that matter) local elements complicate the
situation.
One can 'normalize' an [XML document + schema] into a list of
{xpath, value, type}
which represents the list of XPaths in a particular document, the values are
whatever is at the end of those paths, and the typeconstraint is whatever is
supposed to be at the end, e.g. "string" "element" "attribute" "ID"
"integer" etc etc -- XML Schema uses a QName to specify the type, RELAXNG
uses a pattern, perhaps a piece of XML, or even a non-XML type specifier ala
XDuce.
Rick Jelliffe has recently talked about the relationship of this to
Schematron, the XML Schema formalism talks about normalizing types etc, so
really what I have just written is a short, relatively non-technical
description of what these formalisms say.
To summarize, a more general view of a type is that it is a property of the
_path_ to the piece of XML, not the GI itself, and that the type is a
constraint on what may appear at the end of this path (i.e. a regular
expression).
Jonathan
|