Basic XMLSchema questions

Henry S. Thompson ht at cogsci.ed.ac.uk
Wed Jan 5 23:30:48 GMT 2000


"Alan Santos" <asantos at odi.com> writes:

>  I'm trying to wrap my head around the XMLSchema drafts to determine their
> immediate usefulness (to myself), and have some very basic questions.
> 
> 1)  What is the difference between an archetype, type and datatype?
> When is one used in place of the other.

Archetypes are gone.  Simple types constraint the string value of
attributes and the string content of textonly elements.  Complex types
constrain the content and attributes of any elements.  Simple types
are defined via the <datatype> element; Complex types are defined via
the <type> element.

> 2) Is multiple inheritance not supported for derived types?

No.

> 2a) How is inheritance supported? Is it possible to access the elements of a
> types source without manually doing the traversal, or is inheritance only
> useful in the instance document?

Not sure I understand the question.  Derived types 'inherit', with or
without modification, all the constraints of their source type.  The
post-schema-validation-infoset includes information about the type
used to validate every element and attribute information item therein.

> 3) Is it possible to use the schema for application specific requirements.
>   For example, I'm basing my schema on a Java class model and would like to
> specify the Java class name in the schema.  The only way I can see is to
> wrap it in an <annotation/>.

There is a widespread need for this functionality, c.f. the Cambridge
Communique [1].  Schema-internal specification of this information is
not explicitly supported, except as you say in a general way via
<appinfo>, in the current PWD.

> 3a) Likewise, certain <elements> may actually refer to another type, so I
> want to do something like:
> <element name="thePrice" type="reference" referentType="Price">

I THINK what you want is to declare an element or attribute as
pointing (via a URL, or IDREF, or keyref) to something of a specified
type.  XML Schema as such does not give you this facility with full
generality, although the <key>/<keyref> facility can achieve something
close to this for on-board links.  Validiting such a constraint for
off-board links is outside the scope of XML Schema in my view.  

> Maybe I would just be better off with another XML instance document
> describing the class model?

XML Schema is about syntax, not semantics (much).  There are languages 
designed to describe semantics, e.g. RDF and UML.

ht

[1] http://www.w3.org/TR/1999/schema-arch
-- 
  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
	    Fax: (44) 131 650-4587, e-mail: ht at cogsci.ed.ac.uk
		     URL: http://www.ltg.ed.ac.uk/~ht/

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To unsubscribe, mailto:majordomo at ic.ac.uk the following message;
unsubscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)





More information about the Xml-dev mailing list