From: <bru...@us...> - 2013-04-05 23:10:40
|
Revision: 12033 http://x3d.svn.sourceforge.net/x3d/?rev=12033&view=rev Author: brutzman Date: 2013-04-05 23:10:27 +0000 (Fri, 05 Apr 2013) Log Message: ----------- 3 April 2013, brutzman williams - HAnimDisplacer, HAnimHumanoid, HAnimJoint, HAnimSegment, HAnimSite: name field is required - Prior list of jointNames from http://ecetemp.uwaterloo.ca/~h-anim/spec1.1/#hierarchy replaced by joints list from http://www.web3d.org/files/specifications/19774/V1.0/HAnim/concepts.html#Hierarchy - TODO confirm, add jointNames and segmentNames as shown in http://www.web3d.org/files/specifications/19774/V1.0/HAnim/concepts.html#Hierarchy - TODO add feature points as allowed values for Displacer nodes. http://www.web3d.org/files/specifications/19774/V1.0/HAnim/FeaturePoints.html#FeaturePoints Modified Paths: -------------- www.web3d.org/specifications/x3d-3.0.dtd www.web3d.org/specifications/x3d-3.0.xsd www.web3d.org/specifications/x3d-3.1.dtd www.web3d.org/specifications/x3d-3.1.xsd www.web3d.org/specifications/x3d-3.2.dtd www.web3d.org/specifications/x3d-3.2.xsd www.web3d.org/specifications/x3d-3.3.dtd www.web3d.org/specifications/x3d-3.3.xsd www.web3d.org/specifications/x3d-dtd-changelog.txt www.web3d.org/specifications/x3d-schema-changelog.txt Modified: www.web3d.org/specifications/x3d-3.0.dtd =================================================================== --- www.web3d.org/specifications/x3d-3.0.dtd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.0.dtd 2013-04-05 23:10:27 UTC (rev 12033) @@ -2063,7 +2063,7 @@ <!ELEMENT HAnimDisplacer ( (IS?), (%MetadataNodes;)? ) > <!ATTLIST HAnimDisplacer - name %SFString; #IMPLIED + name %SFString; #REQUIRED coordIndex %MFInt32; #IMPLIED displacements %MFVec3f; #IMPLIED weight %SFFloat; "0.0" @@ -2077,7 +2077,7 @@ <!-- skeleton/joints, segments, sites, skinCoord, skinNormal, skin/viewpoints --> <!-- note that joints, segments and sites should be USE nodes. skin Shapes will USE preceding skinCoord, skinNormal definitions. --> <!ATTLIST HAnimHumanoid - name %SFString; #IMPLIED + name %SFString; #REQUIRED version %SFString; #IMPLIED info %MFString; #IMPLIED translation %SFVec3f; "0 0 0" @@ -2110,7 +2110,7 @@ <![%HAnimComponent;[ <!ELEMENT HAnimJoint (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|HAnimDisplacer|%WildcardNodes; )* ) > <!ATTLIST HAnimJoint - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED ulimit %MFFloat; #IMPLIED llimit %MFFloat; #IMPLIED limitOrientation %SFRotation; "0 0 1 0" @@ -2137,7 +2137,7 @@ (HAnimDisplacer+, ((Coordinate, (%ChildrenNodes;|%WildcardNodes;)*)|((%ChildrenNodes;|%WildcardNodes;)*, Coordinate?))? )? ) ) > <!ATTLIST HAnimSegment - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED mass %SFFloat; "0" centerOfMass %SFVec3f; "0 0 0" momentsOfInertia %MFFloat; "0 0 0 0 0 0 0 0 0" @@ -2150,7 +2150,7 @@ <!ELEMENT HAnimSite (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|%WildcardNodes; )* ) > <!ATTLIST HAnimSite - name %SFString; #IMPLIED + name %SFString; #REQUIRED translation %SFVec3f; "0 0 0" rotation %SFRotation; "0 0 1 0" scale %SFVec3f; "1 1 1" Modified: www.web3d.org/specifications/x3d-3.0.xsd =================================================================== --- www.web3d.org/specifications/x3d-3.0.xsd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.0.xsd 2013-04-05 23:10:27 UTC (rev 12033) @@ -6525,7 +6525,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGeometricPropertyNode"> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="coordIndex" type="MFInt32"/> <xs:attribute name="displacements" type="MFVec3f"/> <xs:attribute name="weight" type="SFFloat" default="0.0"/> @@ -6552,7 +6552,7 @@ </xs:choice> <xs:element ref="Normal" minOccurs="0"/> </xs:sequence> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> @@ -6609,7 +6609,7 @@ <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element ref="HAnimDisplacer"/> </xs:sequence> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="mass" type="SFFloat" default="0"/> <xs:attribute name="centerOfMass" type="SFVec3f" default="0 0 0"/> <xs:attribute name="momentsOfInertia" type="MFFloat" default="0 0 0 0 0 0 0 0 0"/> @@ -6624,7 +6624,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGroupingNode"> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> Modified: www.web3d.org/specifications/x3d-3.1.dtd =================================================================== --- www.web3d.org/specifications/x3d-3.1.dtd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.1.dtd 2013-04-05 23:10:27 UTC (rev 12033) @@ -2088,7 +2088,7 @@ <!ELEMENT HAnimDisplacer ( (IS?), (%MetadataNodes;)? ) > <!ATTLIST HAnimDisplacer - name %SFString; #IMPLIED + name %SFString; #REQUIRED coordIndex %MFInt32; #IMPLIED displacements %MFVec3f; #IMPLIED weight %SFFloat; "0.0" @@ -2102,7 +2102,7 @@ <!-- skeleton/joints, segments, sites, skinCoord, skinNormal, skin/viewpoints --> <!-- note that joints, segments and sites should be USE nodes. skin Shapes will USE preceding skinCoord, skinNormal definitions. --> <!ATTLIST HAnimHumanoid - name %SFString; #IMPLIED + name %SFString; #REQUIRED version %SFString; #IMPLIED info %MFString; #IMPLIED translation %SFVec3f; "0 0 0" @@ -2135,7 +2135,7 @@ <![%HAnimComponent;[ <!ELEMENT HAnimJoint (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|HAnimDisplacer|%WildcardNodes; )* ) > <!ATTLIST HAnimJoint - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED ulimit %MFFloat; #IMPLIED llimit %MFFloat; #IMPLIED limitOrientation %SFRotation; "0 0 1 0" @@ -2162,7 +2162,7 @@ (HAnimDisplacer+, ((Coordinate, (%ChildrenNodes;|%WildcardNodes;)*)|((%ChildrenNodes;|%WildcardNodes;)*, Coordinate?))? )? ) ) > <!ATTLIST HAnimSegment - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED mass %SFFloat; "0" centerOfMass %SFVec3f; "0 0 0" momentsOfInertia %MFFloat; "0 0 0 0 0 0 0 0 0" @@ -2175,7 +2175,7 @@ <!ELEMENT HAnimSite (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|%WildcardNodes; )* ) > <!ATTLIST HAnimSite - name %SFString; #IMPLIED + name %SFString; #REQUIRED translation %SFVec3f; "0 0 0" rotation %SFRotation; "0 0 1 0" scale %SFVec3f; "1 1 1" Modified: www.web3d.org/specifications/x3d-3.1.xsd =================================================================== --- www.web3d.org/specifications/x3d-3.1.xsd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.1.xsd 2013-04-05 23:10:27 UTC (rev 12033) @@ -7068,7 +7068,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGeometricPropertyNode"> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="coordIndex" type="MFInt32"/> <xs:attribute name="displacements" type="MFVec3f"/> <xs:attribute name="weight" type="SFFloat" default="0.0"/> @@ -7095,7 +7095,7 @@ </xs:choice> <xs:element ref="Normal" minOccurs="0"/> </xs:sequence> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> @@ -7152,7 +7152,7 @@ <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element ref="HAnimDisplacer"/> </xs:sequence> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="mass" type="SFFloat" default="0"/> <xs:attribute name="centerOfMass" type="SFVec3f" default="0 0 0"/> <xs:attribute name="momentsOfInertia" type="MFFloat" default="0 0 0 0 0 0 0 0 0"/> @@ -7167,7 +7167,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGroupingNode"> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> Modified: www.web3d.org/specifications/x3d-3.2.dtd =================================================================== --- www.web3d.org/specifications/x3d-3.2.dtd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.2.dtd 2013-04-05 23:10:27 UTC (rev 12033) @@ -2264,7 +2264,7 @@ <!ELEMENT HAnimDisplacer ( (IS?), (%MetadataNodes;)? ) > <!ATTLIST HAnimDisplacer - name %SFString; #IMPLIED + name %SFString; #REQUIRED coordIndex %MFInt32; #IMPLIED displacements %MFVec3f; #IMPLIED weight %SFFloat; "0.0" @@ -2278,7 +2278,7 @@ <!-- skeleton/joints, segments, sites, skinCoord, skinNormal, skin/viewpoints --> <!-- note that joints, segments and sites should be USE nodes. skin Shapes will USE preceding skinCoord, skinNormal definitions. --> <!ATTLIST HAnimHumanoid - name %SFString; #IMPLIED + name %SFString; #REQUIRED version %SFString; #IMPLIED info %MFString; #IMPLIED translation %SFVec3f; "0 0 0" @@ -2311,7 +2311,7 @@ <![%HAnimComponent;[ <!ELEMENT HAnimJoint (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|HAnimDisplacer|%WildcardNodes; )* ) > <!ATTLIST HAnimJoint - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED ulimit %MFFloat; #IMPLIED llimit %MFFloat; #IMPLIED limitOrientation %SFRotation; "0 0 1 0" @@ -2338,7 +2338,7 @@ (HAnimDisplacer+, ((Coordinate, (%ChildrenNodes;|%WildcardNodes;)*)|((%ChildrenNodes;|%WildcardNodes;)*, Coordinate?))? )? ) ) > <!ATTLIST HAnimSegment - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED mass %SFFloat; "0" centerOfMass %SFVec3f; "0 0 0" momentsOfInertia %MFFloat; "0 0 0 0 0 0 0 0 0" @@ -2351,7 +2351,7 @@ <!ELEMENT HAnimSite (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|%WildcardNodes; )* ) > <!ATTLIST HAnimSite - name %SFString; #IMPLIED + name %SFString; #REQUIRED translation %SFVec3f; "0 0 0" rotation %SFRotation; "0 0 1 0" scale %SFVec3f; "1 1 1" Modified: www.web3d.org/specifications/x3d-3.2.xsd =================================================================== --- www.web3d.org/specifications/x3d-3.2.xsd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.2.xsd 2013-04-05 23:10:27 UTC (rev 12033) @@ -7731,7 +7731,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGeometricPropertyNode"> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="coordIndex" type="MFInt32"/> <xs:attribute name="displacements" type="MFVec3f"/> <xs:attribute name="weight" type="SFFloat" default="0.0"/> @@ -7758,7 +7758,7 @@ </xs:choice> <xs:element ref="Normal" minOccurs="0"/> </xs:sequence> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> @@ -7789,7 +7789,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGroupingNode"> - <xs:attribute name="name" type="jointName"/> + <xs:attribute name="name" type="jointName" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> @@ -7815,7 +7815,7 @@ <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element ref="HAnimDisplacer"/> </xs:sequence> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="mass" type="SFFloat" default="0"/> <xs:attribute name="centerOfMass" type="SFVec3f" default="0 0 0"/> <xs:attribute name="momentsOfInertia" type="MFFloat" default="0 0 0 0 0 0 0 0 0"/> @@ -7830,7 +7830,7 @@ <xs:complexType> <xs:complexContent> <xs:extension base="X3DGroupingNode"> - <xs:attribute name="name" type="SFString"/> + <xs:attribute name="name" type="SFString" use="required"/> <xs:attribute name="center" type="SFVec3f" default="0 0 0"/> <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/> <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/> Modified: www.web3d.org/specifications/x3d-3.3.dtd =================================================================== --- www.web3d.org/specifications/x3d-3.3.dtd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.3.dtd 2013-04-05 23:10:27 UTC (rev 12033) @@ -2277,7 +2277,7 @@ <!ELEMENT HAnimDisplacer ( (IS?), (%MetadataNodes;)? ) > <!ATTLIST HAnimDisplacer - name %SFString; #IMPLIED + name %SFString; #REQUIRED coordIndex %MFInt32; #IMPLIED displacements %MFVec3f; #IMPLIED weight %SFFloat; "0.0" @@ -2291,7 +2291,7 @@ <!-- skeleton/joints, segments, sites, skinCoord, skinNormal, skin/viewpoints --> <!-- note that joints, segments and sites should be USE nodes. skin Shapes will USE preceding skinCoord, skinNormal definitions. --> <!ATTLIST HAnimHumanoid - name %SFString; #IMPLIED + name %SFString; #REQUIRED version %SFString; #IMPLIED info %MFString; #IMPLIED translation %SFVec3f; "0 0 0" @@ -2324,7 +2324,7 @@ <![%HAnimComponent;[ <!ELEMENT HAnimJoint (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|HAnimDisplacer|%WildcardNodes; )* ) > <!ATTLIST HAnimJoint - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED ulimit %MFFloat; #IMPLIED llimit %MFFloat; #IMPLIED limitOrientation %SFRotation; "0 0 1 0" @@ -2351,7 +2351,7 @@ (HAnimDisplacer+, ((Coordinate, (%ChildrenNodes;|%WildcardNodes;)*)|((%ChildrenNodes;|%WildcardNodes;)*, Coordinate?))? )? ) ) > <!ATTLIST HAnimSegment - name %JointNames; #IMPLIED + name %JointNames; #REQUIRED mass %SFFloat; "0" centerOfMass %SFVec3f; "0 0 0" momentsOfInertia %MFFloat; "0 0 0 0 0 0 0 0 0" @@ -2364,7 +2364,7 @@ <!ELEMENT HAnimSite (IS?, (%MetadataNodes;)?, ( %ChildrenNodes;|%WildcardNodes; )* ) > <!ATTLIST HAnimSite - name %SFString; #IMPLIED + name %SFString; #REQUIRED translation %SFVec3f; "0 0 0" rotation %SFRotation; "0 0 1 0" scale %SFVec3f; "1 1 1" Modified: www.web3d.org/specifications/x3d-3.3.xsd =================================================================== --- www.web3d.org/specifications/x3d-3.3.xsd 2013-04-05 23:09:14 UTC (rev 12032) +++ www.web3d.org/specifications/x3d-3.3.xsd 2013-04-05 23:10:27 UTC (rev 12033) @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- edited with XMLSpy v2013 (x64) (http://www.altova.com) by Don Brutzman (Naval Postgraduate School) --> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" version="3.3.2"> - <!--======================================================================--> - <!-- Public and private schema extension mechanisms --> - <xs:include schemaLocation="x3d-3.3-Web3dExtensionsPublic.xsd"/> - <xs:include schemaLocation="x3d-3.3-Web3dExtensionsPrivate.xsd"/> - <!--======================================================================--> - <xs:annotation> - <xs:appinfo>XML Schema for the Extensible 3D (X3D) Graphics Specification tagset</xs:appinfo> - <xs:documentation><![CDATA[ + <!--======================================================================--> + <!-- Public and private schema extension mechanisms --> + <xs:include schemaLocation="x3d-3.3-Web3dExtensionsPublic.xsd"/> + <xs:include schemaLocation="x3d-3.3-Web3dExtensionsPrivate.xsd"/> + <!--======================================================================--> + <xs:annotation> + <xs:appinfo>XML Schema for the Extensible 3D (X3D) Graphics Specification tagset</xs:appinfo> + <xs:documentation><![CDATA[ ============================================================================= X3D Specification Schema: http://www.web3d.org/specifications/x3d-3.3.xsd @@ -76,1612 +76,1612 @@ ============================================================================= ]]></xs:documentation> - </xs:annotation> - <!--======================================================================--> - <!--Several pattern possibilities for urls/URNs are conceivable, perhaps a type definition or regex pattern is preferable.--> - <xs:simpleType name="boundingBoxSizeType"> - <xs:annotation> - <xs:appinfo>X3DBoundedObject indicates that bounding box values can be provided (or computed) for this node and any children. Bounding box values approximate the volume of a containing box in the current coordinate system. Bounding box values can optionally be provided to (or calculated by) 3D browsers. Bounding box values are hints that can improve performance by allowing browsers to inexpensively cull geometry, thus avoiding the computational cost of trying to drawing shapes when they are outside of the current view. boundingBoxSizeType dimensions are non-negative values. Default value (-1 -1 -1) indicates that no bounding box size has been computed.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/group.html#Boundingboxes"/> - </xs:annotation> - <xs:restriction base="SFVec3f"/> - </xs:simpleType> - <xs:simpleType name="intensityType"> - <xs:annotation> - <xs:appinfo>intensityType values are floats ranging from 0.0 to 1.0.</xs:appinfo> - <xs:documentation source="_Evaluating the X3D Schema with semantic web tools_, Web3D 2012 Conference, Petit, Marc (EDF), Henry Boccon-Gibod (EDF), Mouton, Christophe (EDF)"/> - </xs:annotation> - <xs:restriction base="SFFloat"> - <xs:minInclusive value="0"/> - <xs:maxInclusive value="1"/> - </xs:restriction> - </xs:simpleType> - <!--======================================================================--> - <!-- Simple types are used as Field types for X3D attributes. --> - <!-- Special-case range restrictions on regular base types also provided. --> - <xs:simpleType name="SFBool"> - <xs:annotation> - <xs:appinfo> + </xs:annotation> + <!--======================================================================--> + <!--Several pattern possibilities for urls/URNs are conceivable, perhaps a type definition or regex pattern is preferable.--> + <xs:simpleType name="boundingBoxSizeType"> + <xs:annotation> + <xs:appinfo>X3DBoundedObject indicates that bounding box values can be provided (or computed) for this node and any children. Bounding box values approximate the volume of a containing box in the current coordinate system. Bounding box values can optionally be provided to (or calculated by) 3D browsers. Bounding box values are hints that can improve performance by allowing browsers to inexpensively cull geometry, thus avoiding the computational cost of trying to drawing shapes when they are outside of the current view. boundingBoxSizeType dimensions are non-negative values. Default value (-1 -1 -1) indicates that no bounding box size has been computed.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/group.html#Boundingboxes"/> + </xs:annotation> + <xs:restriction base="SFVec3f"/> + </xs:simpleType> + <xs:simpleType name="intensityType"> + <xs:annotation> + <xs:appinfo>intensityType values are floats ranging from 0.0 to 1.0.</xs:appinfo> + <xs:documentation source="_Evaluating the X3D Schema with semantic web tools_, Web3D 2012 Conference, Petit, Marc (EDF), Henry Boccon-Gibod (EDF), Mouton, Christophe (EDF)"/> + </xs:annotation> + <xs:restriction base="SFFloat"> + <xs:minInclusive value="0"/> + <xs:maxInclusive value="1"/> + </xs:restriction> + </xs:simpleType> + <!--======================================================================--> + <!-- Simple types are used as Field types for X3D attributes. --> + <!-- Special-case range restrictions on regular base types also provided. --> + <xs:simpleType name="SFBool"> + <xs:annotation> + <xs:appinfo> SFBool is a logical type with possible values (true|false) to match the XML boolean type. Hint: X3D SFBool values are lower case (true|false) in order to maintain compatibility with other XML documents. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFBoolAndMFBool"/> - </xs:annotation> - <xs:restriction base="xs:boolean"/> - </xs:simpleType> - <xs:simpleType name="MFBool"> - <xs:annotation> - <xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFBoolAndMFBool"/> + </xs:annotation> + <xs:restriction base="xs:boolean"/> + </xs:simpleType> + <xs:simpleType name="MFBool"> + <xs:annotation> + <xs:appinfo> MFBool is an array of Boolean values. Type MFBool was previously undefined in the VRML 97 Specification, but nevertheless needed for event utilities and scripting. Example use: MFBool is useful for defining a series of behavior states using a BooleanSequencer prototype. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFBoolAndMFBool"/> - </xs:annotation> - <xs:list itemType="xs:boolean"/> - </xs:simpleType> - <xs:simpleType name="SFColor"> - <xs:annotation> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorAndMFColor"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))))?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFColor"> - <xs:annotation> - <xs:appinfo>Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorAndMFColor"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+)))( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFColorRGBA"> - <xs:annotation> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorRGBAAndMFColorRGBA"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))))?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFColorRGBA"> - <xs:annotation> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorRGBAAndMFColorRGBA"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+)))( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFDouble"> - <xs:annotation> - <xs:appinfo>SFDouble is a double-precision floating-point type. Array values are optionally separated by commas. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFBoolAndMFBool"/> + </xs:annotation> + <xs:list itemType="xs:boolean"/> + </xs:simpleType> + <xs:simpleType name="SFColor"> + <xs:annotation> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorAndMFColor"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))))?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFColor"> + <xs:annotation> + <xs:appinfo>Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorAndMFColor"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+)))( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFColorRGBA"> + <xs:annotation> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorRGBAAndMFColorRGBA"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))))?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFColorRGBA"> + <xs:annotation> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFColorRGBAAndMFColorRGBA"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+)))( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFDouble"> + <xs:annotation> + <xs:appinfo>SFDouble is a double-precision floating-point type. Array values are optionally separated by commas. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision for rationale. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFDoubleAndMFDouble"/> - </xs:annotation> - <xs:restriction base="xs:double"/> - </xs:simpleType> - <xs:simpleType name="MFDouble"> - <xs:annotation> - <xs:appinfo>MFDouble is an array of Double values, i.e. a double-precision floating-point array type. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFDoubleAndMFDouble"/> + </xs:annotation> + <xs:restriction base="xs:double"/> + </xs:simpleType> + <xs:simpleType name="MFDouble"> + <xs:annotation> + <xs:appinfo>MFDouble is an array of Double values, i.e. a double-precision floating-point array type. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision for rationale. SFDouble/MFDouble are analagous to SFDouble/MFDouble. Array values are optionally separated by commas. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFDoubleAndMFDouble"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="(((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFFloat"> - <xs:annotation> - <xs:appinfo>SFFloat is a single-precision floating-point type.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> - </xs:annotation> - <xs:restriction base="xs:float"/> - </xs:simpleType> - <!-- SFFloatNonNegative and SFFloatPositive no longer needed - <xs:simpleType name="SFFloatNonNegative"> - <xs:annotation> - <xs:appinfo>SFFloat is a single-precision floating-point type.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFFloatPositive"> - <xs:annotation> - <xs:appinfo>SFFloat is a single-precision floating-point type.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+)?(0\.(0)*[1-9][0-9]*|([1-9]([0-9]*)?)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?))?"/> - </xs:restriction> - </xs:simpleType> --> - <xs:simpleType name="MFFloat"> - <xs:annotation> - <xs:appinfo>MFFloat is an array of SFFloat values, i.e. a single-precision floating-point array type. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="(((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFImage"> - <xs:annotation> - <xs:appinfo>The SFImage field specifies a single uncompressed 2-dimensional pixel image. SFImage fields contain three integers representing the width, height and number of components in the image, followed by (width x height) hexadecimal or integer values representing the pixels in the image.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFImageAndMFImage"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:minLength value="5"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFImage"> - <xs:annotation> - <xs:appinfo>MFImage is an array of SFImage values.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFImageAndMFImage"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:minLength value="5"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFInt32"> - <xs:annotation> - <xs:appinfo>An SFInt32 field specifies one 32-bit signed integer.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFInt32AndMFInt32"/> - </xs:annotation> - <xs:restriction base="xs:integer"/> - </xs:simpleType> - <xs:simpleType name="MFInt32"> - <xs:annotation> - <xs:appinfo>An MFInt32 field defines an array of 32-bit signed integers. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFInt32AndMFInt32"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFRotation"> - <xs:annotation> - <xs:appinfo>SFRotation is an axis-angle 4-tuple, indicating X-Y-Z direction plus angle orientation about that axis. The first three values specify a normalized rotation axis vector about which the rotation takes place. (Thus the first three values must be within the range [-1..+1] in order to represent a normalized unit vector. Problem: scientific notation allows leading digit.) The fourth value specifies the amount of right-handed rotation about that axis in radians.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFRotationAndMFRotation"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFRotation"> - <xs:annotation> - <xs:appinfo>MFRotation is an array of SFRotation values. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFRotationAndMFRotation"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFString"> - <xs:annotation> - <xs:appinfo>SFString defines a single string encoded with the UTF-8 universal character set.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFStringAndMFString"/> - </xs:annotation> - <xs:restriction base="xs:string"/> - </xs:simpleType> - <xs:simpleType name="MFString"> - <xs:annotation> - <xs:appinfo>MFString is an array of SFString values, each "quoted" and separated by whitespace. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFStringAndMFString"/> - </xs:annotation> - <xs:list itemType="xs:string"/> - </xs:simpleType> - <xs:simpleType name="SFTime"> - <xs:annotation> - <xs:appinfo>The SFTime field specifies a single time value. Time values are specified as a double-precision floating point number. Typically, SFTime fields represent the number of seconds since Jan 1, 1970, 00:00:00 GMT.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFTimeAndMFTime"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((-1(.(0)*)?)|((\+)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?))?"/> - </xs:restriction> - <!-- base type xs:time not usable due to different nomenclatures for time values. --> - </xs:simpleType> - <xs:simpleType name="MFTime"> - <xs:annotation> - <xs:appinfo>MFTime is an array of SFTime values. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFTimeAndMFTime"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((-1(.(0)*)?|(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFVec2f"> - <xs:annotation> - <xs:appinfo>SFVec2f is a 2-tuple pair of SFFloat values. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFDoubleAndMFDouble"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="(((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFFloat"> + <xs:annotation> + <xs:appinfo>SFFloat is a single-precision floating-point type.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> + </xs:annotation> + <xs:restriction base="xs:float"/> + </xs:simpleType> + <!-- SFFloatNonNegative and SFFloatPositive no longer needed + <xs:simpleType name="SFFloatNonNegative"> + <xs:annotation> + <xs:appinfo>SFFloat is a single-precision floating-point type.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFFloatPositive"> + <xs:annotation> + <xs:appinfo>SFFloat is a single-precision floating-point type.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+)?(0\.(0)*[1-9][0-9]*|([1-9]([0-9]*)?)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?))?"/> + </xs:restriction> + </xs:simpleType> --> + <xs:simpleType name="MFFloat"> + <xs:annotation> + <xs:appinfo>MFFloat is an array of SFFloat values, i.e. a single-precision floating-point array type. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFFloatAndMFFloat"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="(((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFImage"> + <xs:annotation> + <xs:appinfo>The SFImage field specifies a single uncompressed 2-dimensional pixel image. SFImage fields contain three integers representing the width, height and number of components in the image, followed by (width x height) hexadecimal or integer values representing the pixels in the image.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFImageAndMFImage"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:minLength value="5"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFImage"> + <xs:annotation> + <xs:appinfo>MFImage is an array of SFImage values.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFImageAndMFImage"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:minLength value="5"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFInt32"> + <xs:annotation> + <xs:appinfo>An SFInt32 field specifies one 32-bit signed integer.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFInt32AndMFInt32"/> + </xs:annotation> + <xs:restriction base="xs:integer"/> + </xs:simpleType> + <xs:simpleType name="MFInt32"> + <xs:annotation> + <xs:appinfo>An MFInt32 field defines an array of 32-bit signed integers. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFInt32AndMFInt32"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFRotation"> + <xs:annotation> + <xs:appinfo>SFRotation is an axis-angle 4-tuple, indicating X-Y-Z direction plus angle orientation about that axis. The first three values specify a normalized rotation axis vector about which the rotation takes place. (Thus the first three values must be within the range [-1..+1] in order to represent a normalized unit vector. Problem: scientific notation allows leading digit.) The fourth value specifies the amount of right-handed rotation about that axis in radians.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFRotationAndMFRotation"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFRotation"> + <xs:annotation> + <xs:appinfo>MFRotation is an array of SFRotation values. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFRotationAndMFRotation"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(((\.[0-9]+|0(\.[0-9]*)?)((E|e)(\+|\-)?[0-9]+)?)|(1(\.[0]*)?((E|e)\-[0-9]+)?)|([1-9](\.[0-9]*)((E|e)\-[0-9]+))) (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFString"> + <xs:annotation> + <xs:appinfo>SFString defines a single string encoded with the UTF-8 universal character set.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFStringAndMFString"/> + </xs:annotation> + <xs:restriction base="xs:string"/> + </xs:simpleType> + <xs:simpleType name="MFString"> + <xs:annotation> + <xs:appinfo>MFString is an array of SFString values, each "quoted" and separated by whitespace. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFStringAndMFString"/> + </xs:annotation> + <xs:list itemType="xs:string"/> + </xs:simpleType> + <xs:simpleType name="SFTime"> + <xs:annotation> + <xs:appinfo>The SFTime field specifies a single time value. Time values are specified as a double-precision floating point number. Typically, SFTime fields represent the number of seconds since Jan 1, 1970, 00:00:00 GMT.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFTimeAndMFTime"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((-1(.(0)*)?)|((\+)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?))?"/> + </xs:restriction> + <!-- base type xs:time not usable due to different nomenclatures for time values. --> + </xs:simpleType> + <xs:simpleType name="MFTime"> + <xs:annotation> + <xs:appinfo>MFTime is an array of SFTime values. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFTimeAndMFTime"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((-1(.(0)*)?|(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFVec2f"> + <xs:annotation> + <xs:appinfo>SFVec2f is a 2-tuple pair of SFFloat values. Hint: SFVec2f can be used to specify a 2D single-precision coordinate. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2fAndMFVec2f"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFVec2f"> - <xs:annotation> - <xs:appinfo>MFVec2f is an array of SFVec2f values. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2fAndMFVec2f"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFVec2d"> - <xs:annotation> - <xs:appinfo>SFVec2d is a 2-tuple pair of SFDouble values. Array values are optionally separated by commas. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2fAndMFVec2f"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFVec2f"> + <xs:annotation> + <xs:appinfo>MFVec2f is an array of SFVec2f values. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2fAndMFVec2f"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFVec2d"> + <xs:annotation> + <xs:appinfo>SFVec2d is a 2-tuple pair of SFDouble values. Array values are optionally separated by commas. Hint: SFVec2d can be used to specify a 2D double-precision coordinate. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2dAndMFVec2d"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)((E|e)(\+|\-)?[0-9]+)? (\+|\-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFVec2d"> - <xs:annotation> - <xs:appinfo>MFVec2d is an array of SFVec2d values. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2dAndMFVec2d"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFVec3f"> - <xs:annotation> - <xs:appinfo>SFVec3f is a 3-tuple triplet of SFFloat values. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2dAndMFVec2d"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)((E|e)(\+|\-)?[0-9]+)? (\+|\-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)((E|e)(\+|\-)?[0-9]+)?)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFVec2d"> + <xs:annotation> + <xs:appinfo>MFVec2d is an array of SFVec2d values. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec2dAndMFVec2d"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFVec3f"> + <xs:annotation> + <xs:appinfo>SFVec3f is a 3-tuple triplet of SFFloat values. Hint: SFVec3f can be used to specify a 3D coordinate or a 3D scale value. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3fAndMFVec3f"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFVec3f"> - <xs:annotation> - <xs:appinfo>MFVec3f is an array of SFVec3f values. Array values are optionally separated by commas.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3fAndMFVec3f"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFVec3d"> - <xs:annotation> - <xs:appinfo>SFVec3d is a 3-tuple triplet of SFDouble values. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3fAndMFVec3f"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFVec3f"> + <xs:annotation> + <xs:appinfo>MFVec3f is an array of SFVec3f values. Array values are optionally separated by commas.</xs:appinfo> + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3fAndMFVec3f"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="SFVec3d"> + <xs:annotation> + <xs:appinfo>SFVec3d is a 3-tuple triplet of SFDouble values. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single-Precision. Hint: SFVec3d can be used to specify a georeferenced 3D coordinate. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3dAndMFVec3d"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFVec3d"> - <xs:annotation> - <xs:appinfo>MFVec3d is an array of SFVec3d values. Array values are optionally separated by commas. + <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3dAndMFVec3d"/> + </xs:annotation> + <xs:restriction base="xs:string"> + <xs:whiteSpace value="collapse"/> + <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="MFVec3d"> + <xs:annotation> + <xs:appinfo>MFVec3d is an array of SFVec3d values. Array values are optionally separated by commas. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision. Hint: MFVec3d can be used to specify a list of georeferenced 3D coordinates. </xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec3dAndMFVec3d"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?( )?(,)?( )?)*"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="SFVec4f"> - <xs:annotation> - <xs:appinfo>SFVec4f is a 4-tuple set of single-precision floating-point values, specifying a 3D homogeneous vector.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec4fAndMFVec4f"/> - </xs:annotation> - <xs:restriction base="xs:string"> - <xs:whiteSpace value="collapse"/> - <xs:pattern value="((\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)? (\+|\-)?(0|[1-9][0-9]*)?(\.[0-9]*)?((E|e)(\+|\-)?[0-9]+)?)?"/> - </xs:restriction> - </xs:simpleType> - <xs:simpleType name="MFVec4f"> - <xs:annotation> - <xs:appinfo>MFVec4f is zero or more SFVec4f values.</xs:appinfo> - <xs:documentation source="http://www.web3d.org/files/specifications/19775-1/V3.3/Part01/fieldsDef.html#SFVec4fAndMFVec4f"/> - </xs:annotation> - <xs:restriction base="... [truncated message content] |