| (no namespace) | =============================================================================
X3D Specification Schema: http://www.web3d.org/specifications/x3d-3.0.xsd
Schema extensions: http://www.web3d.org/specifications/x3d-3.0-Web3dExtensionsPublic.xsd
http://www.web3d.org/specifications/x3d-3.0-Web3dExtensionsPrivate.xsd
Web3D extensions update URL: http://www.web3d.org/x3d/content/x3d-3.0-Web3dExtensionsPublic.xsd
Revised: 10 January 2006
Author: Don Brutzman
Acknowledgements:
- Thanks for excellent insights and assistance from Len Bullard,
Justin Couch, Leonard Daly, Paul Diefenbach, Rick Goldberg, Bryan Housel,
Alan Hudson, Chris Lilley, Braden McDaniel, Tony Parisi, Nick Polys,
Dick Puk, Jeff Sonstein, C. Michael Sperberg-McQueen, Henry Thompson
and Joe Williams.
- Rick Goldberg of the Sun Java3D team wrote the first two versions of the
SAI API using IDL, and provided invaluable help on the schema-based SAI.
- Joe Williams of HyperMultiMedia documented and further developed
the scene graph interface hierarchy, making this schema possible.
- Alan Hudson added many default values and performed consistency checks.
- XML Schema validator: http://www.w3.org/2001/03/webdata/xsv
Design summary:
- Schemas define XML tagsets in depth using a native-XML format.
- Schemas are an alternative to Document Type Definitions (DTDs).
- This X3D Schema matches the functionality of the X3D DTD and
provides significant further capabilities, including strong type
checking of both node and attribute values.
- An XSLT stylesheet can be applied to this schema to autogenerate
source code for the Scene Authoring Interface (SAI), documentation
of node lists, etc.
Design patterns:
- X3D nodes implement X3D node types and are represented by XML elements.
- X3D non-node fields are represented by XML attributes using field types.
- X3D field types are represented by XML Schema (xsd) simpleTypes.
- XML Schema list types are used to augment XML Schema simple types, to
create arrays of X3D base types (integerList etc).
- X3D node types (X3DGroupingNode etc.) are represented by Schema complexTypes.
- X3D node types are captured as XML Schema complexType definitions. These match
the X3D interface hierarchy, capture strong typing of node relationships, and collect
common attributes shared among node types. These features also provide functional
consistency between scene graph content and the X3D Scene Authoring Interface (SAI)
application programming interface (API).
- XML Schema xs:group element definitions provide child-node content models,
since complexTypes can't be used as references to unnamed element children.
X3D Schema version numbering:
- 0.4 Nodes for Core and Base profiles (20 November 2000)
- 0.5 Nodes for DIS, GeoSpatial, HumanoidAnimation, Nurbs, any others in Full profile
- 0.6 Autogenerated Scene Authoring Interface (SAI). First show Java interfaces,
then show multiple formats including Interface Description Language (IDL)
and matching Java classes that implement the Java interfaces
- 0.7 Resolution of compromise/compact representations (wrapper tags), and use of
DTD internal parameter-entity names updated to match interface hierarchy
naming scheme
- 0.8 Exemplar content and authoring tools that correspond to X3D Schema tagset
- 2.9 Public review and Xj3D open-source implementation version
- 3.0 X3D Task Group consensus for inclusion in X3D Specification
- 3.1 X3D Specification Amendment 1
- 3.2 X3D Specification Amendment 2
============================================================================= |
| http://www.w3.org/2001/XMLSchema | Part 1 version: Id: structures.xsd,v 1.2 2004/01/15 11:34:25 ht Exp
Part 2 version: Id: datatypes.xsd,v 1.3 2004/01/23 18:11:13 ht Exp See also: http://www.w3.org/TR/2004/PER-xmlschema-1-20040318/structures.html
The schema corresponding to this document is normative,
with respect to the syntactic constraints it expresses in the
XML Schema language. The documentation (within <documentation> elements)
below, is not normative, but rather highlights important aspects of
the W3C Recommendation of which this is a part
The simpleType element and all of its members are defined
towards the end of this schema document
simple type for the value of the 'namespace' attr of
'any' and 'anyAttribute'
Value is
##any - - any non-conflicting WFXML/attribute at all
##other - - any non-conflicting WFXML/attribute from
namespace other than targetNS
##local - - any unqualified non-conflicting WFXML/attribute
one or - - any non-conflicting WFXML/attribute from
more URI the listed namespaces
references
(space separated)
##targetNamespace or ##local may appear in the above list, to
refer to the targetNamespace of the enclosing
schema or an absent targetNamespace respectively
notations for use within XML Schema schemas
First the built-in primitive datatypes. These definitions are for
information only, the real built-in definitions are magic.
For each built-in datatype in this schema (both primitive and
derived) can be uniquely addressed via a URI constructed
as follows:
1) the base URI is the URI of the XML Schema namespace
2) the fragment identifier is the name of the datatype
For example, to address the int datatype, the URI is:
http://www.w3.org/2001/XMLSchema#int
Additionally, each facet definition element can be uniquely
addressed via a URI constructed as follows:
1) the base URI is the URI of the XML Schema namespace
2) the fragment identifier is the name of the facet
For example, to address the maxInclusive facet, the URI is:
http://www.w3.org/2001/XMLSchema#maxInclusive
Additionally, each facet usage in a built-in datatype definition
can be uniquely addressed via a URI constructed as follows:
1) the base URI is the URI of the XML Schema namespace
2) the fragment identifier is the name of the datatype, followed
by a period (".") followed by the name of the facet
For example, to address the usage of the maxInclusive facet in
the definition of int, the URI is:
http://www.w3.org/2001/XMLSchema#int.maxInclusive
Now the derived primitive types |
| http://www.w3.org/XML/1998/namespace | See http://www.w3.org/XML/1998/namespace.html and
http://www.w3.org/TR/REC-xml for information about this namespace.
This schema document describes the XML namespace, in a form
suitable for import by other schema documents.
Note that local names in this namespace are intended to be defined
only by the World Wide Web Consortium or its subgroups. The
following names are currently defined in this namespace and should
not be used with conflicting semantics by any Working Group,
specification, or document instance:
base (as an attribute name): denotes an attribute whose value
provides a URI to be used as the base for interpreting any
relative URIs in the scope of the element on which it
appears; its value is inherited. This name is reserved
by virtue of its definition in the XML Base specification.
id (as an attribute name): denotes an attribute whose value
should be interpreted as if declared to be of type ID.
The xml:id specification is not yet a W3C Recommendation,
but this attribute is included here to facilitate experimentation
with the mechanisms it proposes. Note that it is _not_ included
in the specialAttrs attribute group.
lang (as an attribute name): denotes an attribute whose value
is a language code for the natural language of the content of
any element; its value is inherited. This name is reserved
by virtue of its definition in the XML specification.
space (as an attribute name): denotes an attribute whose
value is a keyword indicating what whitespace processing
discipline is intended for the content of the element; its
value is inherited. This name is reserved by virtue of its
definition in the XML specification.
Father (in any context at all): denotes Jon Bosak, the chair of
the original XML Working Group. This name is reserved by
the following decision of the W3C XML Plenary and
XML Coordination groups:
In appreciation for his vision, leadership and dedication
the W3C XML Plenary on this 10th day of February, 2000
reserves for Jon Bosak in perpetuity the XML name
xml:Father
This schema defines attributes and an attribute group
suitable for use by
schemas wishing to allow xml:base, xml:lang, xml:space or xml:id
attributes on elements they define.
To enable this, such a schema must import this schema
for the XML namespace, e.g. as follows:
<schema . . .>
. . .
<import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd"/>
Subsequently, qualified reference to any of the attributes
or the group defined below will have the desired effect, e.g.
<type . . .>
. . .
<attributeGroup ref="xml:specialAttrs"/>
will define a type which will schema-validate an instance
element with any of those attributes
In keeping with the XML Schema WG's standard versioning
policy, this schema document will persist at
http://www.w3.org/2005/08/xml.xsd.
At the date of issue it can also be found at
http://www.w3.org/2001/xml.xsd.
The schema document at that URI may however change in the future,
in order to remain compatible with the latest version of XML Schema
itself, or with the XML namespace itself. In other words, if the XML
Schema or XML namespaces change, the version of this document at
http://www.w3.org/2001/xml.xsd will change
accordingly; the version at
http://www.w3.org/2005/08/xml.xsd will not change. |