OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

regrep message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: W3C XML Schema: Component Designators

Has anyone seen this recent W3C Working Draft? It bears direct relation
to the concepts of schema component-based assembly.

More details:

TITLE: "W3C XML Schema: Component Designators" (W3C Working Draft 9
March 2004)

URL: http://www.w3.org/TR/xmlschema-ref/

MISSION: Defines a system for designating XML Schema components


- Lays out the inventory of schema components into three classes:

(1) Primary components: simple and complex type definitions, attribute
declarations, and element declarations

(2) Secondary components: attribute and model group definitions,
identity-constraint definitions, and notation declarations

(3) "Helper" components: annotations, model groups, particles,
wildcards, and attribute uses

- There is a also master schema component, the "schema" component, that
represents the schema as a whole.

- There are also schema components for the facets defined in Part 2 of
the W3C XML Schema recommendation [XSD2]:

(1) Fundamental Facets: ordered, bounded, cardinality, numeric

(2) Constraining Facets: whiteSpace, minInclusive, maxInclusive,
minExclusive, maxExclusive, totalDigits, fractionDigits, length,
minLength, maxLength, pattern, enumeration 

- It also presents a 3-layer model of schema component reference:

Layer 1: Reference Core - defines reference to a schema component in the
context of an assembled XML Schema

Layer 2: Schema Assembly - assembling a schema from a collection of
schema documents; one way is from some kind of package format defining
the collection;

Layer 3: Schema URI - defines conventions for obtaining a single URI to
refer to a collection of schema documents forming a schema (leverages

- It also defines the syntax for a "schema component path" whose steps
are each of the following form: 

/[schema component kind]([ns-prefix:[name]])[[predicate]]

- So one may reference, for example, a single element within a schema

/element(prefix:name)[n] or /prefix:name[n], where the [n] will be
absent if the {scope} of the element declaration is global and may be
absent if the value of n is 1.


- So I believe that one can develop a single "master schema" that acts
as a template for the construction of other schemas, through the
declaration of schema component paths that designate the schema
construct that one wishes to "extract" (so to speak) from the master
schema in creating a new schema. 

-This would be an alternative to storing and maintaining these
components in a registry (note deliberate use of term "component).

Kind Regards,
Joseph Chiusano
Booz | Allen | Hamilton

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]