ColorNormalTexCoordContentModel

Element Group Information

Model

Used By

Source

<xs:group name="ColorNormalTexCoordContentModel">
  <xs:annotation>
    <xs:appinfo>ColorNormalTexCoordContentModel is the child-node content model utilized by ElevationGrid and GeoElevationGrid. ColorNormalTexCoordContentModel can contain Color (or ColorRGBA), Normal and TextureCoordinate, 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#ElevationGrid"/>
  </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: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: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:element ref="FogCoordinate" minOccurs="0"/>
  </xs:sequence>
</xs:group>