============================================================================= X3D Specification Schema: http://www.web3d.org/specifications/x3d-3.2.xsd Schema extensions: http://www.web3d.org/specifications/x3d-3.2-Web3dExtensionsPublic.xsd http://www.web3d.org/specifications/x3d-3.2-Web3dExtensionsPrivate.xsd Maintainers: Don Brutzman and Roy Walmsley, X3D Working Group cochairs Contributors: Henry Boccon-Gibod, Don Brutzman, John Carlson, Justin Couch, Leonard Daly, Rick Goldberg, Alan Hudson, HyoKwang Lee, Myeong Wong Lee, Vince Marchetti, Mike McCann, Christophe Mouton, Terry Norbraten, Marc Petit, Nicholas Polys, Dick Puk, Keith Victor, Roy Walmsley, Joe Williams, Changhua Wu, Byounghyun Yoo, Kwan Hee Yoo, and members of the X3D Working Group. 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, Roy Walmsley, 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. Further information on X3D Validation and Quality Assurance (QA) is available at http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Validation http://www.web3d.org/x3d/content/examples/X3dResources.html#QualityAssurance 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 - 3.3 X3D Specification Amendment 3 - 4.0 X3D Specification Amendment 4.0 (developmental, HTML5 DOM) - 4.1 X3D Specification Amendment 4.1 (developmental, Mixed Augmented Reality MAR) Open-source license: http://www.web3d.org/specifications/license.html http://www.web3d.org/specifications/license.txt ============================================================================= |