X3D XML Schema x3d-3.1.xsd


schema location http://www.web3d.org/specifications/x3d-3.1.xsd
attributeFormDefault unqualified
elementFormDefault qualified
 
Elements  Groups  Complex types  Simple types  Attr. groups 
Anchor  AppearanceChildContentModel  SceneGraphStructureStatement  accessTypeChoices  DEF_USE 
Appearance  AppearanceChildContentModelNoProtoInstance  X3DAppearanceChildNode  bboxSizeType  globalAttributes 
Arc2D  ChildContentModel  X3DAppearanceNode  closureTypeChoices 
ArcClose2D  ChildContentModelCore  X3DBackgroundNode  componentNameChoices 
AudioClip  ChildContentModelDIS  X3DBindableNode  containerFieldChoicesAudioClip 
Background  ChildContentModelFull  X3DBoundedObject  containerFieldChoicesColor 
Billboard  ChildContentModelGeoSpatial  X3DChildNode  containerFieldChoicesDISEntityTypeMapping 
BooleanFilter  ChildContentModelHumanoidAnimation  X3DColorNode  containerFieldChoicesGroupLODShapeTransform 
BooleanSequencer  ChildContentModelImmersive  X3DComposedGeometryNode  containerFieldChoicesHAnimJoint 
BooleanToggle  ChildContentModelInteractive  X3DCoordinateNode  containerFieldChoicesHAnimSegment 
BooleanTrigger  ChildContentModelInterchange  X3DDragSensorNode  containerFieldChoicesHAnimSite 
Box  ChildContentModelNurbs  X3DEnvironmentalSensorNode  containerFieldChoicesMetadata 
CADAssembly  ChildContentModelProtoInstance  X3DEnvironmentTextureNode  containerFieldChoicesPackagedShader 
CADFace  ChildContentModelSceneGraphStructure  X3DField  containerFieldChoicesShaderPart 
CADLayer  ColorCoordinateContentModel  X3DFogObject  containerFieldChoicesTextureCoordinate 
CADPart  ColorCoordinateNormalTexCoordContentModel  X3DFontStyleNode  containerFieldChoicesX3DCoordinateNode 
Circle2D  ColorNormalTexCoordContentModel  X3DGeometricPropertyNode  containerFieldChoicesX3DNormalNode 
Collision  ComposedGeometryContentModel  X3DGeometryNode  containerFieldChoicesX3DTexture2DNode 
Color  GeometryContentModel  X3DGroupingNode  containerFieldChoicesX3DTexture3DNode 
ColorInterpolator  GeometryContentModel2D  X3DInfoNode  containerFieldChoicesX3DUrlObject 
ColorRGBA  GeometryContentModel2DImmersive  X3DInterpolatorNode  containerFieldChoicesX3dUrlObjectTexture 
component  GeometryContentModelCAD  X3DKeyDeviceSensorNode  fieldTypeChoices 
ComposedCubeMapTexture  GeometryContentModelGeoSpatial  X3DLightNode  fogTypeChoices 
ComposedShader  GeometryContentModelImmersive  X3DMaterialNode  fontFamilyValues 
ComposedTexture3D  GeometryContentModelInteractive  X3DMetadataObject  fontStyleChoices 
Cone  GeometryContentModelInterchange  X3DNetworkSensorNode  generatedCubeMapTextureUpdateChoices 
connect  GeometryContentModelNurbs  X3DNode  geoMetadataKeyValues 
Contour2D  GroupingNodeChildContentModel  X3DNodeMixedContent  geoSystemEarthEllipsoidValues 
ContourPolyline2D  LoadSensorChildContentModel  X3DNormalNode  geoSystemSpatialReferenceFrameValues 
Coordinate  SceneGraphFragmentContentModel  X3DNurbsControlCurveNode  geoSystemType 
CoordinateDouble  SceneGraphFragmentWithPrototypeDeclarationsContentModel  X3DNurbsSurfaceGeometryNode  hanimFeaturePointNameValues 
CoordinateInterpolator  ShapeChildContentModel  X3DParametricGeometryNode  hanimHumanoidInfoKeyValues 
CoordinateInterpolator2D  SoundChildContentModel  X3DPointingDeviceSensorNode  hanimJointNameValues 
Cylinder  TextChildContentModel  X3DProductStructureChildNode  hanimSegmentNameValues 
CylinderSensor  TextureBackgroundChildContentModel  X3DProgrammableShaderObject  hanimVersionChoices 
DirectionalLight  X3DPrototypeInstance  initializeOnlyAccessTypes 
Disk2D  X3DScriptNode  inputOnlyAccessTypes 
ElevationGrid  X3DSensorNode  inputOutputAccessTypes 
EspduTransform  X3DSequencerNode  intensityType 
EXPORT  X3DShaderNode  justifyChoices 
ExternProtoDeclare  X3DShapeNode  metaDirectionChoices 
Extrusion  X3DSoundNode  metaNameValues 
field  X3DSoundSourceNode  MFBool 
fieldValue  X3DTexture2DNode  MFColor 
FillProperties  X3DTexture3DNode  MFColorRGBA 
FloatVertexAttribute  X3DTextureCoordinateNode  MFDouble 
Fog  X3DTextureNode  MFFloat 
FogCoordinate  X3DTextureTransformNode  MFImage 
FontStyle  X3DTimeDependentNode  MFInt32 
GeneratedCubeMapTexture  X3DTouchSensorNode  MFMatrix3d 
GeoCoordinate  X3DTriggerNode  MFMatrix3f 
GeoElevationGrid  X3DUrlObject  MFMatrix4d 
GeoLocation  X3DVertexAttributeNode  MFMatrix4f 
GeoLOD  MFNode 
GeoMetadata  MFRotation 
GeoOrigin  MFString 
GeoPositionInterpolator  MFTime 
GeoTouchSensor  MFVec2d 
GeoViewpoint  MFVec2f 
Group  MFVec3d 
HAnimDisplacer  MFVec3f 
HAnimHumanoid  MFVec4d 
HAnimJoint  MFVec4f 
HAnimSegment  multiTextureFunctionValues 
HAnimSite  multiTextureModeValues 
head  multiTextureSourceValues 
ImageCubeMapTexture  navigationTransitionTypeValues 
ImageTexture  navigationTypeValues 
ImageTexture3D  networkModeChoices 
IMPORT  outputOnlyAccessTypes 
IndexedFaceSet  particleSystemGeometryTypeValues 
IndexedLineSet  phaseFunctionValues 
IndexedQuadSet  pickableObjectTypeValues 
IndexedTriangleFanSet  pickSensorMatchCriterionChoices 
IndexedTriangleSet  pickSensorSortOrderValues 
IndexedTriangleStripSet  profileNameChoices 
Inline  SFBool 
IntegerSequencer  SFColor 
IntegerTrigger  SFColorRGBA 
IS  SFDouble 
KeySensor  SFFloat 
LineProperties  SFImage 
LineSet  SFInt32 
LoadSensor  SFMatrix3d 
LocalFog  SFMatrix3f 
LOD  SFMatrix4d 
Material  SFMatrix4f 
Matrix3VertexAttribute  SFNode 
Matrix4VertexAttribute  SFRotation 
meta  SFString 
MetadataDouble  SFTime 
MetadataFloat  SFVec2d 
MetadataInteger  SFVec2f 
MetadataSet  SFVec3d 
MetadataString  SFVec3f 
MovieTexture  SFVec4d 
MultiTexture  SFVec4f 
MultiTextureCoordinate  shaderLanguageValues 
MultiTextureTransform  shaderPartTypeValues 
NavigationInfo  textureCoordinateGeneratorModeChoices 
Normal  x3dVersionChoices 
NormalInterpolator 
NurbsCurve 
NurbsCurve2D 
NurbsOrientationInterpolator 
NurbsPatchSurface 
NurbsPositionInterpolator 
NurbsSet 
NurbsSurfaceInterpolator 
NurbsSweptSurface 
NurbsSwungSurface 
NurbsTextureCoordinate 
NurbsTrimmedSurface 
OrientationInterpolator 
PackagedShader 
PixelTexture 
PixelTexture3D 
PlaneSensor 
PointLight 
PointSet 
Polyline2D 
Polypoint2D 
PositionInterpolator 
PositionInterpolator2D 
ProgramShader 
ProtoBody 
ProtoDeclare 
ProtoInstance 
ProtoInterface 
ProximitySensor 
QuadSet 
ReceiverPdu 
Rectangle2D 
ROUTE 
ScalarInterpolator 
Scene 
Script 
ShaderPart 
ShaderProgram 
Shape 
SignalPdu 
Sound 
Sphere 
SphereSensor 
SpotLight 
StaticGroup 
StringSensor 
Switch 
Text 
TextureBackground 
TextureCoordinate 
TextureCoordinate3D 
TextureCoordinate4D 
TextureCoordinateGenerator 
TextureTransform 
TextureTransform3D 
TextureTransformMatrix3D 
TimeSensor 
TimeTrigger 
TouchSensor 
Transform 
TransmitterPdu 
TriangleFanSet 
TriangleSet 
TriangleSet2D 
TriangleStripSet 
Viewpoint 
VisibilitySensor 
WorldInfo 
X3D 


schema location http://www.web3d.org/specifications/x3d-3.1-Web3dExtensionsPublic.xsd
attributeFormDefault unqualified
elementFormDefault qualified
 
Elements  Simple types 
XvlShell  XvlShell.shellTypes 


schema location http://www.web3d.org/specifications/x3d-3.1-Web3dExtensionsPrivate.xsd
attributeFormDefault unqualified
elementFormDefault qualified
 


element Anchor
diagram x3d-3.1_p1.png
type extension of X3DGroupingNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString Background ColorInterpolator CoordinateInterpolator DirectionalLight Group NavigationInfo NormalInterpolator OrientationInterpolator PositionInterpolator ScalarInterpolator Shape TimeSensor Transform Viewpoint WorldInfo Anchor BooleanFilter BooleanSequencer BooleanToggle BooleanTrigger CylinderSensor Inline IntegerSequencer IntegerTrigger KeySensor PlaneSensor PointLight ProximitySensor SphereSensor SpotLight StringSensor Switch TimeTrigger TouchSensor AudioClip Billboard Collision Fog LoadSensor LocalFog LOD Script Sound VisibilitySensor CADAssembly CADLayer CADPart CoordinateInterpolator2D PositionInterpolator2D StaticGroup TextureBackground EspduTransform ReceiverPdu SignalPdu TransmitterPdu GeoLocation GeoLOD GeoMetadata GeoPositionInterpolator GeoTouchSensor GeoViewpoint HAnimHumanoid HAnimJoint HAnimSegment HAnimSite NurbsOrientationInterpolator NurbsPositionInterpolator NurbsSurfaceInterpolator NurbsSet ProtoInstance ROUTE ExternProtoDeclare ProtoDeclare IMPORT EXPORT
used by
groups ChildContentModelInteractive LoadSensorChildContentModel
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
description  SFString        
parameter  MFString        
url  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
containerField  containerFieldChoicesX3DUrlObject    children    
annotation
appinfo
<xs:attribute name="additionalInterface" type="xs:string" default="X3DUrlObject"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="Anchor">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DUrlObject"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/networking.html#Anchor"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGroupingNode">
       
<xs:attribute name="description" type="SFString"/>
       
<xs:attribute name="parameter" type="MFString"/>
       
<xs:attribute name="url" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="containerFieldChoicesX3DUrlObject" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Anchor/@description
type SFString
source <xs:attribute name="description" type="SFString"/>

attribute Anchor/@parameter
type MFString
source <xs:attribute name="parameter" type="MFString"/>

attribute Anchor/@url
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
source <xs:attribute name="url" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Anchor/@containerField
type containerFieldChoicesX3DUrlObject
properties
default children
facets
Kind Value Annotation
enumeration children
appinfo
parent node has abstract type X3DGroupingNode
enumeration watchList
appinfo
parent node is LoadSensor
source <xs:attribute name="containerField" type="containerFieldChoicesX3DUrlObject" default="children"/>

element Appearance
diagram x3d-3.1_p2.png
type extension of X3DAppearanceNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString FillProperties LineProperties Material ComposedShader PackagedShader ProgramShader ComposedCubeMapTexture ComposedTexture3D ImageTexture ImageTexture3D MovieTexture MultiTexture PixelTexture GeneratedCubeMapTexture ImageCubeMapTexture MultiTextureTransform TextureTransform ProtoInstance
used by
groups SceneGraphFragmentContentModel ShapeChildContentModel
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
containerField  xs:NMTOKEN    appearance    
annotation
appinfo
<xs:element name="fillProperties" type="SFNode" fixed="inputOutputField" default="FillProperties">
<xs:annotation>
<xs:appinfo>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="3"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="lineProperties" type="SFNode" fixed="inputOutputField" default="LineProperties">
<xs:annotation>
<xs:appinfo>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<!-- pointProperties added in X3D version 4.0 -->
<xs:element name="material" type="SFNode" fixed="inputOutputField" default="X3DMaterialNode"/>
<xs:element name="shaders" type="MFNode" fixed="inputOutputField" default="X3DShaderNode">
<xs:annotation>
<xs:appinfo>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="3"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:element name="texture" type="SFNode" fixed="inputOutputField" default="X3DTextureNode"/>
<xs:element name="textureTransform" type="SFNode" fixed="inputOutputField" default="X3DTextureTransformNode">
<xs:annotation>
<xs:appinfo>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
</xs:appinfo>
</xs:annotation>
</xs:element>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="Appearance">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="fillProperties" type="SFNode" fixed="inputOutputField" default="FillProperties">
       
<xs:annotation>
         
<xs:appinfo>
           
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
           
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="3"/>
         
</xs:appinfo>
       
</xs:annotation>
     
</xs:element>
     
<xs:element name="lineProperties" type="SFNode" fixed="inputOutputField" default="LineProperties">
       
<xs:annotation>
         
<xs:appinfo>
           
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
           
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
         
</xs:appinfo>
       
</xs:annotation>
     
</xs:element>
     
<!-- pointProperties added in X3D version 4.0 -->
     
<xs:element name="material" type="SFNode" fixed="inputOutputField" default="X3DMaterialNode"/>
     
<xs:element name="shaders" type="MFNode" fixed="inputOutputField" default="X3DShaderNode">
       
<xs:annotation>
         
<xs:appinfo>
           
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
           
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="3"/>
         
</xs:appinfo>
       
</xs:annotation>
     
</xs:element>
     
<xs:element name="texture" type="SFNode" fixed="inputOutputField" default="X3DTextureNode"/>
     
<xs:element name="textureTransform" type="SFNode" fixed="inputOutputField" default="X3DTextureTransformNode">
       
<xs:annotation>
         
<xs:appinfo>
           
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
           
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
         
</xs:appinfo>
       
</xs:annotation>
     
</xs:element>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Appearance"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DAppearanceNode">
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="appearance"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Appearance/@containerField
type xs:NMTOKEN
properties
default appearance
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="appearance"/>

element Arc2D
diagram x3d-3.1_p3.png
type extension of X3DGeometryNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group GeometryContentModel2D
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
radius  derived by: SFFloat    1    
startAngle  derived by: SFFloat    0    
appinfo
range +/- 2pi
endAngle  derived by: SFFloat    1.570796    
appinfo
range +/- 2pi
containerField  xs:NMTOKEN    geometry    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry2D"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="Arc2D">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry2D"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry2D.html#Arc2D"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGeometryNode">
       
<xs:attribute name="radius" default="1">
         
<!-- type="SFFloatNonNegative" -->
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="0"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="startAngle" default="0">
         
<xs:annotation>
           
<xs:appinfo>range +/- 2pi</xs:appinfo>
         
</xs:annotation>
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="-6.2832"/>
             
<xs:maxExclusive value="6.2832"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="endAngle" default="1.570796">
         
<xs:annotation>
           
<xs:appinfo>range +/- 2pi</xs:appinfo>
         
</xs:annotation>
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="-6.2832"/>
             
<xs:maxExclusive value="6.2832"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Arc2D/@radius
type restriction of SFFloat
properties
default 1
facets
Kind Value Annotation
minExclusive 0
source <xs:attribute name="radius" default="1">
 
<!-- type="SFFloatNonNegative" -->
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="0"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute Arc2D/@startAngle
type restriction of SFFloat
properties
default 0
facets
Kind Value Annotation
minExclusive -6.2832
maxExclusive 6.2832
annotation
appinfo
range +/- 2pi
source <xs:attribute name="startAngle" default="0">
 
<xs:annotation>
   
<xs:appinfo>range +/- 2pi</xs:appinfo>
 
</xs:annotation>
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="-6.2832"/>
     
<xs:maxExclusive value="6.2832"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute Arc2D/@endAngle
type restriction of SFFloat
properties
default 1.570796
facets
Kind Value Annotation
minExclusive -6.2832
maxExclusive 6.2832
annotation
appinfo
range +/- 2pi
source <xs:attribute name="endAngle" default="1.570796">
 
<xs:annotation>
   
<xs:appinfo>range +/- 2pi</xs:appinfo>
 
</xs:annotation>
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="-6.2832"/>
     
<xs:maxExclusive value="6.2832"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute Arc2D/@containerField
type xs:NMTOKEN
properties
default geometry
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>

element ArcClose2D
diagram x3d-3.1_p4.png
type extension of X3DGeometryNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group GeometryContentModel2D
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
radius  derived by: SFFloat    1    
startAngle  derived by: SFFloat    0    
appinfo
range +/- 2pi
endAngle  derived by: SFFloat    1.570796    
appinfo
range +/- 2pi
closureType  closureTypeChoices    PIE    
solid  SFBool    false    
containerField  xs:NMTOKEN    geometry    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry2D"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="ArcClose2D">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry2D"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry2D.html#ArcClose2D"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGeometryNode">
       
<xs:attribute name="radius" default="1">
         
<!-- type="SFFloatNonNegative" -->
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="0"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="startAngle" default="0">
         
<xs:annotation>
           
<xs:appinfo>range +/- 2pi</xs:appinfo>
         
</xs:annotation>
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="-6.2832"/>
             
<xs:maxExclusive value="6.2832"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="endAngle" default="1.570796">
         
<xs:annotation>
           
<xs:appinfo>range +/- 2pi</xs:appinfo>
         
</xs:annotation>
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="-6.2832"/>
             
<xs:maxExclusive value="6.2832"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="closureType" type="closureTypeChoices" default="PIE"/>
       
<xs:attribute name="solid" type="SFBool" default="false"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ArcClose2D/@radius
type restriction of SFFloat
properties
default 1
facets
Kind Value Annotation
minExclusive 0
source <xs:attribute name="radius" default="1">
 
<!-- type="SFFloatNonNegative" -->
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="0"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute ArcClose2D/@startAngle
type restriction of SFFloat
properties
default 0
facets
Kind Value Annotation
minExclusive -6.2832
maxExclusive 6.2832
annotation
appinfo
range +/- 2pi
source <xs:attribute name="startAngle" default="0">
 
<xs:annotation>
   
<xs:appinfo>range +/- 2pi</xs:appinfo>
 
</xs:annotation>
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="-6.2832"/>
     
<xs:maxExclusive value="6.2832"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute ArcClose2D/@endAngle
type restriction of SFFloat
properties
default 1.570796
facets
Kind Value Annotation
minExclusive -6.2832
maxExclusive 6.2832
annotation
appinfo
range +/- 2pi
source <xs:attribute name="endAngle" default="1.570796">
 
<xs:annotation>
   
<xs:appinfo>range +/- 2pi</xs:appinfo>
 
</xs:annotation>
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="-6.2832"/>
     
<xs:maxExclusive value="6.2832"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute ArcClose2D/@closureType
type closureTypeChoices
properties
default PIE
facets
Kind Value Annotation
enumeration PIE
appinfo
Connects arc endpoints to center, forming a pie wedge
enumeration CHORD
appinfo
Connects arc endpoints directly to each other, as in chord on a circle
source <xs:attribute name="closureType" type="closureTypeChoices" default="PIE"/>

attribute ArcClose2D/@solid
type SFBool
properties
default false
source <xs:attribute name="solid" type="SFBool" default="false"/>

attribute ArcClose2D/@containerField
type xs:NMTOKEN
properties
default geometry
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>

element AudioClip
diagram x3d-3.1_p5.png
type extension of X3DSoundSourceNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
groups ChildContentModelImmersive LoadSensorChildContentModel SoundChildContentModel
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
loop  SFBool    false    
pauseTime  SFTime    0    
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Time"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
resumeTime  SFTime    0    
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Time"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
startTime  SFTime    0    
stopTime  SFTime    0    
description  SFString        
pitch  derived by: SFFloat    1.0    
url  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
containerField  containerFieldChoicesAudioClip    source    
annotation
appinfo
<xs:attribute name="additionalInterface" type="xs:string" default="X3DUrlObject"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Sound"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="AudioClip">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DUrlObject"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Sound"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/sound.html#AudioClip"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DSoundSourceNode">
       
<xs:attribute name="url" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="containerFieldChoicesAudioClip" default="source"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute AudioClip/@url
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
source <xs:attribute name="url" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute AudioClip/@containerField
type containerFieldChoicesAudioClip
properties
default source
facets
Kind Value Annotation
enumeration source
appinfo
parent node is Sound node
enumeration watchList
appinfo
parent node is LoadSensor
source <xs:attribute name="containerField" type="containerFieldChoicesAudioClip" default="source"/>

element Background
diagram x3d-3.1_p6.png
type extension of X3DBackgroundNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group ChildContentModelInterchange
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
groundAngle  MFFloat        
appinfo
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1.5708"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
groundColor  MFColor        
skyAngle  MFFloat        
appinfo
<xs:minInclusive value="0"/>
<xs:maxInclusive value="3.1416"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
skyColor  MFColor    0 0 0    
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
Only one skyColor is required at level 1.
transparency  intensityType    0    
backUrl  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
bottomUrl  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
frontUrl  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
leftUrl  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
rightUrl  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
topUrl  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="Background">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/enveffects.html#Background"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DBackgroundNode">
       
<xs:attribute name="backUrl" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="bottomUrl" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="frontUrl" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="leftUrl" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="rightUrl" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="topUrl" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Background/@backUrl
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:attribute name="backUrl" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Background/@bottomUrl
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:attribute name="bottomUrl" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Background/@frontUrl
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:attribute name="frontUrl" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Background/@leftUrl
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:attribute name="leftUrl" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Background/@rightUrl
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:attribute name="rightUrl" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Background/@topUrl
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:attribute name="topUrl" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EnvironmentalEffects"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute Background/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element Billboard
diagram x3d-3.1_p7.png
type extension of X3DGroupingNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString Background ColorInterpolator CoordinateInterpolator DirectionalLight Group NavigationInfo NormalInterpolator OrientationInterpolator PositionInterpolator ScalarInterpolator Shape TimeSensor Transform Viewpoint WorldInfo Anchor BooleanFilter BooleanSequencer BooleanToggle BooleanTrigger CylinderSensor Inline IntegerSequencer IntegerTrigger KeySensor PlaneSensor PointLight ProximitySensor SphereSensor SpotLight StringSensor Switch TimeTrigger TouchSensor AudioClip Billboard Collision Fog LoadSensor LocalFog LOD Script Sound VisibilitySensor CADAssembly CADLayer CADPart CoordinateInterpolator2D PositionInterpolator2D StaticGroup TextureBackground EspduTransform ReceiverPdu SignalPdu TransmitterPdu GeoLocation GeoLOD GeoMetadata GeoPositionInterpolator GeoTouchSensor GeoViewpoint HAnimHumanoid HAnimJoint HAnimSegment HAnimSite NurbsOrientationInterpolator NurbsPositionInterpolator NurbsSurfaceInterpolator NurbsSet ProtoInstance ROUTE ExternProtoDeclare ProtoDeclare IMPORT EXPORT
used by
group ChildContentModelImmersive
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
axisOfRotation  SFVec3f    0 1 0    
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Navigation"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="Billboard">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Navigation"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/navigation.html#Billboard"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGroupingNode">
       
<xs:attribute name="axisOfRotation" type="SFVec3f" default="0 1 0"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Billboard/@axisOfRotation
type SFVec3f
properties
default 0 1 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="axisOfRotation" type="SFVec3f" default="0 1 0"/>

attribute Billboard/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element BooleanFilter
diagram x3d-3.1_p8.png
type extension of X3DChildNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group ChildContentModelInteractive
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="set_boolean" type="SFBool" fixed="inputOnlyField"/>
<xs:attribute name="inputFalse" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="inputNegate" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="inputTrue" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="BooleanFilter">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="set_boolean" type="SFBool" fixed="inputOnlyField"/>
     
<xs:attribute name="inputFalse" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="inputNegate" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="inputTrue" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#BooleanFilter"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DChildNode">
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute BooleanFilter/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element BooleanSequencer
diagram x3d-3.1_p9.png
type extension of X3DSequencerNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group ChildContentModelInteractive
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
key  MFFloat        
keyValue  MFBool        
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="value_changed" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="BooleanSequencer">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="value_changed" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#BooleanSequencer"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DSequencerNode">
       
<xs:attribute name="keyValue" type="MFBool"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute BooleanSequencer/@keyValue
type MFBool
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*((true|false)\s*,?\s*)*
source <xs:attribute name="keyValue" type="MFBool"/>

attribute BooleanSequencer/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element BooleanToggle
diagram x3d-3.1_p10.png
type extension of X3DChildNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group ChildContentModelInteractive
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
toggle  SFBool    false    
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="set_boolean" type="SFBool" fixed="inputOnlyField"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="BooleanToggle">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="set_boolean" type="SFBool" fixed="inputOnlyField"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#BooleanToggle"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DChildNode">
       
<xs:attribute name="toggle" type="SFBool" default="false"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute BooleanToggle/@toggle
type SFBool
properties
default false
source <xs:attribute name="toggle" type="SFBool" default="false"/>

attribute BooleanToggle/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element BooleanTrigger
diagram x3d-3.1_p11.png
type extension of X3DTriggerNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group ChildContentModelInteractive
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="set_triggerTime" type="SFTime" fixed="inputOnlyField"/>
<xs:attribute name="triggerTrue" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="BooleanTrigger">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="set_triggerTime" type="SFTime" fixed="inputOnlyField"/>
     
<xs:attribute name="triggerTrue" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="EventUtilities"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/utils.html#BooleanTrigger"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DTriggerNode">
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute BooleanTrigger/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element Box
diagram x3d-3.1_p12.png
type extension of X3DGeometryNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group GeometryContentModelInterchange
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
size  SFVec3f    2 2 2    
solid  SFBool    true    
containerField  xs:NMTOKEN    geometry    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry3D"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="Box">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry3D"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Box"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGeometryNode">
       
<xs:attribute name="size" type="SFVec3f" default="2 2 2"/>
       
<xs:attribute name="solid" type="SFBool" default="true"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Box/@size
type SFVec3f
properties
default 2 2 2
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="size" type="SFVec3f" default="2 2 2"/>

attribute Box/@solid
type SFBool
properties
default true
source <xs:attribute name="solid" type="SFBool" default="true"/>

attribute Box/@containerField
type xs:NMTOKEN
properties
default geometry
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>

element CADAssembly
diagram x3d-3.1_p13.png
type extension of X3DGroupingNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString Background ColorInterpolator CoordinateInterpolator DirectionalLight Group NavigationInfo NormalInterpolator OrientationInterpolator PositionInterpolator ScalarInterpolator Shape TimeSensor Transform Viewpoint WorldInfo Anchor BooleanFilter BooleanSequencer BooleanToggle BooleanTrigger CylinderSensor Inline IntegerSequencer IntegerTrigger KeySensor PlaneSensor PointLight ProximitySensor SphereSensor SpotLight StringSensor Switch TimeTrigger TouchSensor AudioClip Billboard Collision Fog LoadSensor LocalFog LOD Script Sound VisibilitySensor CADAssembly CADLayer CADPart CoordinateInterpolator2D PositionInterpolator2D StaticGroup TextureBackground EspduTransform ReceiverPdu SignalPdu TransmitterPdu GeoLocation GeoLOD GeoMetadata GeoPositionInterpolator GeoTouchSensor GeoViewpoint HAnimHumanoid HAnimJoint HAnimSegment HAnimSite NurbsOrientationInterpolator NurbsPositionInterpolator NurbsSurfaceInterpolator NurbsSet ProtoInstance ROUTE ExternProtoDeclare ProtoDeclare IMPORT EXPORT
used by
group ChildContentModelFull
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
name  SFString        
appinfo
name attribute is ordinarily required, unless this is a USE node
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="additionalInterface" type="xs:string" default="X3DProductStructureChildNode"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="CADAssembly">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DProductStructureChildNode"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/CADGeometry.html#CADAssembly"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGroupingNode">
       
<xs:annotation>
         
<xs:documentation>children</xs:documentation>
       
</xs:annotation>
       
<xs:attribute name="name" type="SFString">
         
<xs:annotation>
           
<xs:appinfo>name attribute is ordinarily required, unless this is a USE node</xs:appinfo>
           
<!-- Design note: cannot REQUIRE @name field or else USE nodes incorrectly fail to validate -->
           
<xs:documentation source="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NameTyping"/>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute CADAssembly/@name
type SFString
annotation
appinfo
name attribute is ordinarily required, unless this is a USE node
source <xs:attribute name="name" type="SFString">
 
<xs:annotation>
   
<xs:appinfo>name attribute is ordinarily required, unless this is a USE node</xs:appinfo>
   
<!-- Design note: cannot REQUIRE @name field or else USE nodes incorrectly fail to validate -->
   
<xs:documentation source="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NameTyping"/>
 
</xs:annotation>
</xs:attribute>

attribute CADAssembly/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element CADFace
diagram x3d-3.1_p14.png
type extension of X3DProductStructureChildNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString Shape LOD Transform ProtoInstance
used by
element CADPart
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
name  SFString        
appinfo
name attribute is ordinarily required, unless this is a USE node
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:element name="shape" type="SFNode" fixed="inputOutputField" default="Shape|LOD|Transform"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DBoundedObject"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="CADFace">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="shape" type="SFNode" fixed="inputOutputField" default="Shape|LOD|Transform"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DBoundedObject"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/CADGeometry.html#CADFace"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DProductStructureChildNode">
       
<xs:choice minOccurs="0" maxOccurs="1">
         
<xs:annotation>
           
<xs:documentation>shape</xs:documentation>
         
</xs:annotation>
         
<xs:element ref="Shape"/>
         
<xs:element ref="LOD"/>
         
<xs:element ref="Transform"/>
         
<xs:element ref="ProtoInstance">
           
<xs:annotation>
             
<xs:documentation>Appropriately typed substitution node</xs:documentation>
           
</xs:annotation>
         
</xs:element>
       
</xs:choice>
       
<xs:attribute name="bboxCenter" type="SFVec3f" default="0 0 0"/>
       
<xs:attribute name="bboxSize" type="bboxSizeType" default="-1 -1 -1"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
     
<!-- bboxDisplay, visible added in X3D version 4.0 -->
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute CADFace/@bboxCenter
type SFVec3f
properties
default 0 0 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="bboxCenter" type="SFVec3f" default="0 0 0"/>

attribute CADFace/@bboxSize
type bboxSizeType
properties
default -1 -1 -1
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*((([+]?(((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*)|((\-1(\.(0)*)?([Ee][+-]?[0]+)?\s+){2}\-1(\.(0)*)?([Ee][+-]?[0]+)?)\s*)?
source <xs:attribute name="bboxSize" type="bboxSizeType" default="-1 -1 -1"/>

attribute CADFace/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element CADLayer
diagram x3d-3.1_p15.png
type extension of X3DGroupingNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString Background ColorInterpolator CoordinateInterpolator DirectionalLight Group NavigationInfo NormalInterpolator OrientationInterpolator PositionInterpolator ScalarInterpolator Shape TimeSensor Transform Viewpoint WorldInfo Anchor BooleanFilter BooleanSequencer BooleanToggle BooleanTrigger CylinderSensor Inline IntegerSequencer IntegerTrigger KeySensor PlaneSensor PointLight ProximitySensor SphereSensor SpotLight StringSensor Switch TimeTrigger TouchSensor AudioClip Billboard Collision Fog LoadSensor LocalFog LOD Script Sound VisibilitySensor CADAssembly CADLayer CADPart CoordinateInterpolator2D PositionInterpolator2D StaticGroup TextureBackground EspduTransform ReceiverPdu SignalPdu TransmitterPdu GeoLocation GeoLOD GeoMetadata GeoPositionInterpolator GeoTouchSensor GeoViewpoint HAnimHumanoid HAnimJoint HAnimSegment HAnimSite NurbsOrientationInterpolator NurbsPositionInterpolator NurbsSurfaceInterpolator NurbsSet ProtoInstance ROUTE ExternProtoDeclare ProtoDeclare IMPORT EXPORT
used by
group ChildContentModelFull
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
name  SFString        
appinfo
name attribute is ordinarily required, unless this is a USE node
visible  MFBool        
containerField  xs:NMTOKEN    children    
annotation
appinfo
<!-- no inheritance of X3DProductStructureChildNode though matching requirements -->
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="CADLayer">
 
<xs:annotation>
   
<xs:appinfo>
     
<!-- no inheritance of X3DProductStructureChildNode though matching requirements -->
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/CADGeometry.html#CADLayer"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGroupingNode">
       
<xs:annotation>
         
<xs:documentation>children</xs:documentation>
       
</xs:annotation>
       
<xs:attribute name="name" type="SFString">
         
<xs:annotation>
           
<xs:appinfo>name attribute is ordinarily required, unless this is a USE node</xs:appinfo>
           
<!-- Design note: cannot REQUIRE @name field or else USE nodes incorrectly fail to validate -->
           
<xs:documentation source="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NameTyping"/>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="visible" type="MFBool"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute CADLayer/@name
type SFString
annotation
appinfo
name attribute is ordinarily required, unless this is a USE node
source <xs:attribute name="name" type="SFString">
 
<xs:annotation>
   
<xs:appinfo>name attribute is ordinarily required, unless this is a USE node</xs:appinfo>
   
<!-- Design note: cannot REQUIRE @name field or else USE nodes incorrectly fail to validate -->
   
<xs:documentation source="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NameTyping"/>
 
</xs:annotation>
</xs:attribute>

attribute CADLayer/@visible
type MFBool
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*((true|false)\s*,?\s*)*
source <xs:attribute name="visible" type="MFBool"/>

attribute CADLayer/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element CADPart
diagram x3d-3.1_p16.png
type extension of X3DProductStructureChildNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString CADFace ProtoInstance
used by
group ChildContentModelFull
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
name  SFString        
appinfo
name attribute is ordinarily required, unless this is a USE node
center  SFVec3f    0 0 0    
rotation  SFRotation    0 0 1 0    
scale  SFVec3f    1 1 1    
scaleOrientation  SFRotation    0 0 1 0    
translation  SFVec3f    0 0 0    
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:element name="addChildren" type="MFNode" fixed="inputOnlyField" default="CADFace">
<xs:annotation>
<xs:documentation>CADPart implements X3DGroupingNode but can only contain CADFace or ProtoInstance nodes</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="removeChildren" type="MFNode" fixed="inputOnlyField" default="CADFace"/>
<xs:element name="children" type="MFNode" fixed="inputOutputField" default="CADFace"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DGroupingNode"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="CADPart">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="addChildren" type="MFNode" fixed="inputOnlyField" default="CADFace">
       
<xs:annotation>
         
<xs:documentation>CADPart implements X3DGroupingNode but can only contain CADFace or ProtoInstance nodes</xs:documentation>
       
</xs:annotation>
     
</xs:element>
     
<xs:element name="removeChildren" type="MFNode" fixed="inputOnlyField" default="CADFace"/>
     
<xs:element name="children" type="MFNode" fixed="inputOutputField" default="CADFace"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DGroupingNode"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="CADGeometry"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/CADGeometry.html#CADPart"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DProductStructureChildNode">
       
<xs:choice minOccurs="0" maxOccurs="unbounded">
         
<xs:annotation>
           
<xs:documentation>children</xs:documentation>
         
</xs:annotation>
         
<xs:element ref="CADFace"/>
         
<xs:element ref="ProtoInstance">
           
<xs:annotation>
             
<xs:documentation>Appropriately typed substitution node</xs:documentation>
           
</xs:annotation>
         
</xs:element>
       
</xs:choice>
       
<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"/>
       
<xs:attribute name="scaleOrientation" type="SFRotation" default="0 0 1 0"/>
       
<xs:attribute name="translation" type="SFVec3f" default="0 0 0"/>
       
<xs:attribute name="bboxCenter" type="SFVec3f" default="0 0 0"/>
       
<xs:attribute name="bboxSize" type="bboxSizeType" default="-1 -1 -1"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
     
<!-- bboxDisplay, visible added in X3D version 4.0 -->
     
<!-- additional contained element (node) content -->
     
<!-- additional contained attribute (simple-type) content, matching X3DGroupingNode -->
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute CADPart/@center
type SFVec3f
properties
default 0 0 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="center" type="SFVec3f" default="0 0 0"/>

attribute CADPart/@rotation
type SFRotation
properties
default 0 0 1 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){3}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="rotation" type="SFRotation" default="0 0 1 0"/>

attribute CADPart/@scale
type SFVec3f
properties
default 1 1 1
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="scale" type="SFVec3f" default="1 1 1"/>

attribute CADPart/@scaleOrientation
type SFRotation
properties
default 0 0 1 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){3}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="scaleOrientation" type="SFRotation" default="0 0 1 0"/>

attribute CADPart/@translation
type SFVec3f
properties
default 0 0 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="translation" type="SFVec3f" default="0 0 0"/>

attribute CADPart/@bboxCenter
type SFVec3f
properties
default 0 0 0
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*(([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+-]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*
source <xs:attribute name="bboxCenter" type="SFVec3f" default="0 0 0"/>

attribute CADPart/@bboxSize
type bboxSizeType
properties
default -1 -1 -1
facets
Kind Value Annotation
whiteSpace collapse
pattern \s*((([+]?(((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s+){2}([+]?((0|[1-9][0-9]*)(\.[0-9]*)?|\.[0-9]+)([Ee][+-]?[0-9]+)?)\s*)|((\-1(\.(0)*)?([Ee][+-]?[0]+)?\s+){2}\-1(\.(0)*)?([Ee][+-]?[0]+)?)\s*)?
source <xs:attribute name="bboxSize" type="bboxSizeType" default="-1 -1 -1"/>

attribute CADPart/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element Circle2D
diagram x3d-3.1_p17.png
type extension of X3DGeometryNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group GeometryContentModel2D
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
radius  derived by: SFFloat    1    
containerField  xs:NMTOKEN    geometry    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry2D"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="Circle2D">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Geometry2D"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry2D.html#Circle2D"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGeometryNode">
       
<xs:attribute name="radius" default="1">
         
<!-- type="SFFloatPositive" -->
         
<xs:simpleType>
           
<xs:restriction base="SFFloat">
             
<xs:minExclusive value="0"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Circle2D/@radius
type restriction of SFFloat
properties
default 1
facets
Kind Value Annotation
minExclusive 0
source <xs:attribute name="radius" default="1">
 
<!-- type="SFFloatPositive" -->
 
<xs:simpleType>
   
<xs:restriction base="SFFloat">
     
<xs:minExclusive value="0"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

attribute Circle2D/@containerField
type xs:NMTOKEN
properties
default geometry
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="geometry"/>

element Collision
diagram x3d-3.1_p18.png
type extension of X3DGroupingNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString Background ColorInterpolator CoordinateInterpolator DirectionalLight Group NavigationInfo NormalInterpolator OrientationInterpolator PositionInterpolator ScalarInterpolator Shape TimeSensor Transform Viewpoint WorldInfo Anchor BooleanFilter BooleanSequencer BooleanToggle BooleanTrigger CylinderSensor Inline IntegerSequencer IntegerTrigger KeySensor PlaneSensor PointLight ProximitySensor SphereSensor SpotLight StringSensor Switch TimeTrigger TouchSensor AudioClip Billboard Collision Fog LoadSensor LocalFog LOD Script Sound VisibilitySensor CADAssembly CADLayer CADPart CoordinateInterpolator2D PositionInterpolator2D StaticGroup TextureBackground EspduTransform ReceiverPdu SignalPdu TransmitterPdu GeoLocation GeoLOD GeoMetadata GeoPositionInterpolator GeoTouchSensor GeoViewpoint HAnimHumanoid HAnimJoint HAnimSegment HAnimSite NurbsOrientationInterpolator NurbsPositionInterpolator NurbsSurfaceInterpolator NurbsSet ProtoInstance ROUTE ExternProtoDeclare ProtoDeclare IMPORT EXPORT
used by
group ChildContentModelImmersive
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
bboxCenter  SFVec3f    0 0 0    
bboxSize  bboxSizeType    -1 -1 -1    
enabled  SFBool    true    
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="collideTime" type="SFTime" fixed="outputOnlyField"/>
<xs:attribute name="isActive" type="SFBool" fixed="outputOnlyField"/>
<xs:element name="proxy" type="SFNode" fixed="initializeOnlyField" default="X3DChildNode"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DSensorNode"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Navigation"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="Collision">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="collideTime" type="SFTime" fixed="outputOnlyField"/>
     
<xs:attribute name="isActive" type="SFBool" fixed="outputOnlyField"/>
     
<xs:element name="proxy" type="SFNode" fixed="initializeOnlyField" default="X3DChildNode"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DSensorNode"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Navigation"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/navigation.html#Collision"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DGroupingNode">
       
<xs:attribute name="enabled" type="SFBool" default="true"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Collision/@enabled
type SFBool
properties
default true
source <xs:attribute name="enabled" type="SFBool" default="true"/>

attribute Collision/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element Color
diagram x3d-3.1_p19.png
type extension of X3DColorNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
element ElevationGrid
groups ColorCoordinateContentModel ColorCoordinateNormalTexCoordContentModel ColorNormalTexCoordContentModel ComposedGeometryContentModel SceneGraphFragmentContentModel
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
color  MFColor        
containerField  containerFieldChoicesColor    color    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="Color">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Color"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DColorNode">
       
<xs:attribute name="color" type="MFColor"/>
       
<xs:attribute name="containerField" type="containerFieldChoicesColor" default="color"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute Color/@color
type MFColor
facets
Kind Value Annotation
whiteSpace collapse
pattern (\s)*((([+-]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)(\s)+){2}([+-]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)\s*,?\s*)*
source <xs:attribute name="color" type="MFColor"/>

attribute Color/@containerField
type containerFieldChoicesColor
properties
default color
facets
Kind Value Annotation
enumeration color
appinfo
parent node is a geometry node
enumeration colorRamp
appinfo
parent node is ParticleSystem
source <xs:attribute name="containerField" type="containerFieldChoicesColor" default="color"/>

element ColorInterpolator
diagram x3d-3.1_p20.png
type extension of X3DInterpolatorNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
group ChildContentModelInterchange
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
key  MFFloat        
keyValue  MFColor        
containerField  xs:NMTOKEN    children    
annotation
appinfo
<xs:attribute name="value_changed" type="SFColor" fixed="outputOnlyField"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Interpolation"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="ColorInterpolator">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="value_changed" type="SFColor" fixed="outputOnlyField"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Interpolation"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/interp.html#ColorInterpolator"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DInterpolatorNode">
       
<xs:attribute name="keyValue" type="MFColor"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ColorInterpolator/@keyValue
type MFColor
facets
Kind Value Annotation
whiteSpace collapse
pattern (\s)*((([+-]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)(\s)+){2}([+-]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)\s*,?\s*)*
source <xs:attribute name="keyValue" type="MFColor"/>

attribute ColorInterpolator/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>

element ColorRGBA
diagram x3d-3.1_p21.png
type extension of X3DColorNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
element ElevationGrid
groups ColorCoordinateContentModel ColorCoordinateNormalTexCoordContentModel ColorNormalTexCoordContentModel ComposedGeometryContentModel SceneGraphFragmentContentModel
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
color  MFColorRGBA        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
Alpha value optionally supported until Rendering component level 4.
containerField  containerFieldChoicesColor    color    
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="ColorRGBA">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#ColorRGBA"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DColorNode">
       
<xs:attribute name="color" type="MFColorRGBA">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
Alpha value optionally supported until Rendering component level 4.
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="containerFieldChoicesColor" default="color"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ColorRGBA/@color
type MFColorRGBA
facets
Kind Value Annotation
whiteSpace collapse
pattern (\s)*((([+-]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)(\s)+){3}([+-]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)\s*,?\s*)*
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
Alpha value optionally supported until Rendering component level 4.
source <xs:attribute name="color" type="MFColorRGBA">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Rendering"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
Alpha value optionally supported until Rendering component level 4.
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute ColorRGBA/@containerField
type containerFieldChoicesColor
properties
default color
facets
Kind Value Annotation
enumeration color
appinfo
parent node is a geometry node
enumeration colorRamp
appinfo
parent node is ParticleSystem
source <xs:attribute name="containerField" type="containerFieldChoicesColor" default="color"/>

element component
diagram x3d-3.1_p22.png
type extension of SceneGraphStructureStatement
properties
content complex
used by
element head
attributes
Name  Type  Use  Default  Fixed  Annotation
name  componentNameChoices  required      
level  derived by: SFInt32  required      
appinfo

Warning: level is required and must be specified in source document.
annotation
appinfo
<!-- provide default value for API; explicit definition still required in XML documents to avoid assumption errors -->
<xs:attribute name="level" type="SFInt32" default="1"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Core"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
Functional summary: each added component statement indicates needed scene functionality support above the given X3D profile.
source <xs:element name="component">
 
<xs:annotation>
   
<xs:appinfo>
     
<!-- provide default value for API; explicit definition still required in XML documents to avoid assumption errors -->
     
<xs:attribute name="level" type="SFInt32" default="1"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Core"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
Functional summary: each added component statement indicates needed scene functionality support above the given X3D profile.
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#Components"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="SceneGraphStructureStatement">
       
<xs:attribute name="name" type="componentNameChoices" use="required"/>
       
<xs:attribute name="level" use="required">
         
<xs:annotation>
           
<xs:appinfo>
Warning: level is required and must be specified in source document.
</xs:appinfo>
         
</xs:annotation>
         
<xs:simpleType>
           
<xs:restriction base="SFInt32">
             
<xs:minInclusive value="1"/>
             
<xs:maxInclusive value="5"/>
           
</xs:restriction>
         
</xs:simpleType>
       
</xs:attribute>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute component/@name
type componentNameChoices
properties
use required
facets
Kind Value Annotation
enumeration Core
appinfo

The Core component supplies the base functionality for the X3D run-time system, including the abstract base node type, field types, the event model, and routing.
enumeration CADGeometry
appinfo

The CADGeometry component is provided for Computer-Aided Design (CAD) nodes.
enumeration CubeMapTexturing
appinfo

The Cube Map Environmental Texturing component describes how additional texturing effects are defined to produce environmental effects such as reflections from objects.
enumeration DIS
appinfo

The Distributed Interactive Simulation (DIS) component provides networked interoperability with the IEEE DIS protocol for sharing state and conducting real-time platform-level simulations across multiple host computers.
enumeration EnvironmentalEffects
appinfo

Nodes in the Environmental effects component support the creation of realistic environmental effects such as panoramic backgrounds and fog.
enumeration EnvironmentalSensor
appinfo

The Environment Sensor nodes emit events indicating activity in the scene environment, usually based on interactions between the viewer and the world.
enumeration EventUtilities
appinfo

The Event Utility nodes provide the capability to filter, trigger, convert, or sequence numerous event-types for common interactive applications without the use of a Script node.
enumeration Geometry2D
appinfo

The Geometry2D component defines how two-dimensional geometry is specified and what shapes are available.
enumeration Geometry3D
appinfo

The Geometry3D component describes how three-dimensional geometry is specified and defines ElevationGrid, Extrusion, IndexedFaceSet, and most
primitive geometry nodes (Box, Cone, Cylinder, Sphere).
enumeration Geospatial
appinfo

The Geospatial component defines how to associate real-world locations in an X3D scene and specifies nodes particularly tuned for geospatial applications.
enumeration Grouping
appinfo

The Grouping component describes how nodes are organized into groups to establish a transformation hierarchy for the X3D scene graph.
enumeration H-Anim
appinfo

Legacy enumeration H-Anim for X3D versions 3.0-3.3 provides backwards compatibility with Humanoid Animation (HAnim) version 1, preferred form of enumeration value is HAnim.
enumeration Interpolation
appinfo

Interpolator nodes provide keyframe-based animation capability.
enumeration KeyDeviceSensor
appinfo

The Key Device Sensor defines how keyboard keystrokes are inserted into an X3D world.
enumeration Lighting
appinfo

The Lighting component specifies how light sources are defined and positioned, as well as how lights effect the rendered image.
enumeration Navigation
appinfo

The Navigation component specifies how a user can effectively and intuitively move through and around a 3D scene.
enumeration Networking
appinfo

The Networking component defines node types and other features used to access file-based and streaming resources on the World Wide Web.
enumeration NURBS
appinfo

The NURBS component describes Non-uniform Rational B-Spline (NURBS) geometry and interpolation nodes.
enumeration PointingDeviceSensor
appinfo

Pointing device sensor nodes detect pointing events from user-interface devices, defining activities such as a user selecting a piece of geometry.
enumeration Rendering
appinfo

The Rendering component includes fundamental rendering primitives such as TriangleSet and PointSet nodes, as well as geometric properties nodes that define how coordinate indices, colors, normals and texture coordinates are specified.
enumeration Scripting
appinfo

The Script component describes how Script nodes are used to effect changes in X3D worlds.
enumeration Shaders
appinfo

The programmable shaders component describes how programmable shaders are specified and how they affect the visual appearance of geometry.
enumeration Shape
appinfo

The Shape component defines nodes for associating geometry with their visible properties and the scene environment.
enumeration Sound
appinfo

The Sound component defines how sound is delivered to an X3D world as well as how sounds are accessed.
enumeration Text
appinfo

The Text component defines how text strings are rendered in an X3D scene.
enumeration Texturing
appinfo

The Texturing component specifies how 2D texture images are defined and then positioned on associated geometry.
enumeration Texturing3D
appinfo

The Texturing3D component specifies how 3D volumetric textures describe surface properties as data points in a volume of space, rather than a flat surface.
enumeration Time
appinfo

The Time component defines how time is sensed, computed and associated with events in an X3D scene.
source <xs:attribute name="name" type="componentNameChoices" use="required"/>

attribute component/@level
type restriction of SFInt32
properties
use required
facets
Kind Value Annotation
minInclusive 1
maxInclusive 5
annotation
appinfo

Warning: level is required and must be specified in source document.
source <xs:attribute name="level" use="required">
 
<xs:annotation>
   
<xs:appinfo>
Warning: level is required and must be specified in source document.
</xs:appinfo>
 
</xs:annotation>
 
<xs:simpleType>
   
<xs:restriction base="SFInt32">
     
<xs:minInclusive value="1"/>
     
<xs:maxInclusive value="5"/>
   
</xs:restriction>
 
</xs:simpleType>
</xs:attribute>

element ComposedCubeMapTexture
diagram x3d-3.1_p23.png
type extension of X3DEnvironmentTextureNode
properties
content complex
children IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString ImageTexture PixelTexture MovieTexture ProtoInstance
used by
group AppearanceChildContentModelNoProtoInstance
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
containerField  xs:NMTOKEN    texture    
annotation
appinfo
<xs:element name="back" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
<xs:element name="bottom" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
<xs:element name="front" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
<xs:element name="left" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
<xs:element name="right" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
<xs:element name="top" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="CubeMapTexturing"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
source <xs:element name="ComposedCubeMapTexture">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="back" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
     
<xs:element name="bottom" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
     
<xs:element name="front" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
     
<xs:element name="left" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
     
<xs:element name="right" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
     
<xs:element name="top" type="SFNode" fixed="inputOutputField" default="X3DTexture2DNode"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="CubeMapTexturing"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/env_texture.html#ComposedCubeMapTexture"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DEnvironmentTextureNode">
       
<xs:sequence minOccurs="0" maxOccurs="6">
         
<xs:choice minOccurs="1" maxOccurs="1">
           
<xs:element ref="ImageTexture"/>
           
<xs:element ref="PixelTexture"/>
           
<xs:element ref="MovieTexture"/>
           
<xs:element ref="ProtoInstance">
             
<xs:annotation>
               
<xs:documentation>Appropriately typed substitution node</xs:documentation>
             
</xs:annotation>
           
</xs:element>
         
</xs:choice>
       
</xs:sequence>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="texture"/>
     
</xs:extension>
     
<!-- containerField values:  front back left right top bottom -->
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ComposedCubeMapTexture/@containerField
type xs:NMTOKEN
properties
default texture
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="texture"/>

element ComposedShader
diagram x3d-3.1_p24.png
properties
content complex
children field IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString ShaderPart ProtoInstance
used by
group AppearanceChildContentModelNoProtoInstance
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
language  SFString        
containerField  xs:NMTOKEN