group ColorCoordinateNormalTexCoordContentModel
diagram x3d-3.3_p267.png
children Color ColorRGBA Coordinate CoordinateDouble GeoCoordinate Normal TextureCoordinate TextureCoordinateGenerator MultiTextureCoordinate ProtoInstance FogCoordinate
annotation
appinfo
ColorCoordinateNormalTexCoordContentModel is the child-node content model corresponding to IndexedFaceSet and related Triangle-3D geometry nodes.  ColorCoordinateNormalTexCoordContentModel can contain VertexAttribute, Color (or ColorRGBA), Coordinate (or CoordinateDouble), Normal and TextureCoordinate nodes, in any order.  No more than one instance of any single node type is allowed.
source <xs:group name="ColorCoordinateNormalTexCoordContentModel">
 
<xs:annotation>
   
<xs:appinfo>ColorCoordinateNormalTexCoordContentModel is the child-node content model corresponding to IndexedFaceSet and related Triangle-3D geometry nodes.  ColorCoordinateNormalTexCoordContentModel can contain VertexAttribute, Color (or ColorRGBA), Coordinate (or CoordinateDouble), Normal and TextureCoordinate nodes, in any order.  No more than one instance of any single node type is allowed.</xs:appinfo>
   
<xs:documentation source="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet"/>
 
</xs:annotation>
 
<xs:sequence>
   
<xs:choice>
     
<xs:sequence>
       
<xs:choice>
         
<xs:element ref="Color"/>
         
<xs:element ref="ColorRGBA"/>
       
</xs:choice>
       
<xs:choice minOccurs="0">
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Coordinate"/>
             
<xs:element ref="CoordinateDouble"/>
             
<xs:element ref="GeoCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="Normal"/>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="TextureCoordinate"/>
             
<xs:element ref="TextureCoordinateGenerator"/>
             
<xs:element ref="MultiTextureCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="ProtoInstance">
             
<xs:annotation>
               
<xs:documentation>Appropriately typed substitution node</xs:documentation>
             
</xs:annotation>
           
</xs:element>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
       
</xs:choice>
     
</xs:sequence>
     
<xs:sequence>
       
<xs:choice>
         
<xs:element ref="Coordinate"/>
         
<xs:element ref="CoordinateDouble"/>
         
<xs:element ref="GeoCoordinate"/>
       
</xs:choice>
       
<xs:choice minOccurs="0">
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Color"/>
             
<xs:element ref="ColorRGBA"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="Normal"/>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="TextureCoordinate"/>
             
<xs:element ref="TextureCoordinateGenerator"/>
             
<xs:element ref="MultiTextureCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="ProtoInstance">
             
<xs:annotation>
               
<xs:documentation>Appropriately typed substitution node</xs:documentation>
             
</xs:annotation>
           
</xs:element>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
       
</xs:choice>
     
</xs:sequence>
     
<xs:sequence>
       
<xs:element ref="Normal"/>
       
<xs:choice minOccurs="0">
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Color"/>
             
<xs:element ref="ColorRGBA"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Coordinate"/>
             
<xs:element ref="CoordinateDouble"/>
             
<xs:element ref="GeoCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="TextureCoordinate"/>
             
<xs:element ref="TextureCoordinateGenerator"/>
             
<xs:element ref="MultiTextureCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="ProtoInstance">
             
<xs:annotation>
               
<xs:documentation>Appropriately typed substitution node</xs:documentation>
             
</xs:annotation>
           
</xs:element>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
       
</xs:choice>
     
</xs:sequence>
     
<xs:sequence>
       
<xs:choice>
         
<xs:element ref="TextureCoordinate"/>
         
<xs:element ref="TextureCoordinateGenerator"/>
         
<xs:element ref="MultiTextureCoordinate"/>
       
</xs:choice>
       
<xs:choice minOccurs="0">
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Color"/>
             
<xs:element ref="ColorRGBA"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Coordinate"/>
             
<xs:element ref="CoordinateDouble"/>
             
<xs:element ref="GeoCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="Normal"/>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="ProtoInstance">
             
<xs:annotation>
               
<xs:documentation>Appropriately typed substitution node</xs:documentation>
             
</xs:annotation>
           
</xs:element>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
       
</xs:choice>
     
</xs:sequence>
     
<xs:sequence>
       
<xs:element ref="ProtoInstance">
         
<xs:annotation>
           
<xs:documentation>Appropriately typed substitution node</xs:documentation>
         
</xs:annotation>
       
</xs:element>
       
<xs:choice minOccurs="0">
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Color"/>
             
<xs:element ref="ColorRGBA"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="Coordinate"/>
             
<xs:element ref="CoordinateDouble"/>
             
<xs:element ref="GeoCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="Normal"/>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:choice>
             
<xs:element ref="TextureCoordinate"/>
             
<xs:element ref="TextureCoordinateGenerator"/>
             
<xs:element ref="MultiTextureCoordinate"/>
           
</xs:choice>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
         
<xs:sequence>
           
<xs:element ref="ProtoInstance">
             
<xs:annotation>
               
<xs:documentation>Appropriately typed substitution node</xs:documentation>
             
</xs:annotation>
           
</xs:element>
           
<xs:choice minOccurs="0">
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="Normal"/>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:choice>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
               
</xs:choice>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
             
<xs:sequence>
               
<xs:element ref="ProtoInstance">
                 
<xs:annotation>
                   
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                 
</xs:annotation>
               
</xs:element>
               
<xs:choice minOccurs="0">
                 
<xs:element ref="Color"/>
                 
<xs:element ref="ColorRGBA"/>
                 
<xs:element ref="Coordinate"/>
                 
<xs:element ref="CoordinateDouble"/>
                 
<xs:element ref="GeoCoordinate"/>
                 
<xs:element ref="Normal"/>
                 
<xs:element ref="TextureCoordinate"/>
                 
<xs:element ref="TextureCoordinateGenerator"/>
                 
<xs:element ref="MultiTextureCoordinate"/>
                 
<xs:element ref="ProtoInstance">
                   
<xs:annotation>
                     
<xs:documentation>Appropriately typed substitution node</xs:documentation>
                   
</xs:annotation>
                 
</xs:element>
               
</xs:choice>
             
</xs:sequence>
           
</xs:choice>
         
</xs:sequence>
       
</xs:choice>
     
</xs:sequence>
   
</xs:choice>
   
<xs:element ref="FogCoordinate" minOccurs="0"/>
 
</xs:sequence>
</xs:group>


XML Schema documentation generated by XMLSpy Schema Editor http://www.altova.com/xmlspy