RigidBodyCollectionContentModel

Element Group Information

Model

Used By

Source

<xs:group name="RigidBodyCollectionContentModel">
  <xs:annotation>
    <xs:appinfo>RigidBodyCollectionContentModel can contain RigidBody nodes as a bodies field, plus X3DRigidJointNode nodes as a joints field, plus a CollisionCollection node as a collider field.</xs:appinfo>
    <xs:documentation source="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rigid_physics.html#RigidBodyCollection"/>
  </xs:annotation>
  <!-- TODO:  incomplete -->
  <xs:choice>
    <xs:sequence>
      <xs:element ref="CollisionCollection">
        <xs:annotation>
          <xs:documentation>collider</xs:documentation>
        </xs:annotation>
      </xs:element>
      <xs:choice>
        <xs:sequence minOccurs="0">
          <xs:choice maxOccurs="unbounded">
            <xs:element ref="RigidBody">
              <xs:annotation>
                <xs:documentation>bodies</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
              <xs:documentation>joints</xs:documentation>
            </xs:annotation>
            <xs:element ref="BallJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="DoubleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="MotorJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SingleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SliderJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="UniversalJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="ProtoInstance">
              <xs:annotation>
                <xs:documentation>Appropriately typed substitution node</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
        </xs:sequence>
        <xs:sequence minOccurs="0">
          <xs:choice maxOccurs="unbounded">
            <xs:annotation>
              <xs:documentation>joints</xs:documentation>
            </xs:annotation>
            <xs:element ref="BallJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="DoubleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="MotorJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SingleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SliderJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="UniversalJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element ref="RigidBody">
              <xs:annotation>
                <xs:documentation>bodies</xs:documentation>
              </xs:annotation>
            </xs:element>
            <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 maxOccurs="unbounded">
        <xs:element ref="RigidBody">
          <xs:annotation>
            <xs:documentation>bodies</xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:choice>
      <xs:choice>
        <xs:sequence minOccurs="0">
          <xs:element ref="CollisionCollection">
            <xs:annotation>
              <xs:documentation>collider</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:annotation>
              <xs:documentation>joints</xs:documentation>
            </xs:annotation>
            <xs:element ref="BallJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="DoubleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="MotorJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SingleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SliderJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="UniversalJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="ProtoInstance">
              <xs:annotation>
                <xs:documentation>Appropriately typed substitution node</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
        </xs:sequence>
        <xs:sequence minOccurs="0">
          <xs:choice maxOccurs="unbounded">
            <xs:annotation>
              <xs:documentation>joints</xs:documentation>
            </xs:annotation>
            <xs:element ref="BallJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="DoubleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="MotorJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SingleAxisHingeJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="SliderJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="UniversalJoint">
              <xs:annotation>
                <xs:documentation>massDensityModel</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
          <xs:element ref="CollisionCollection" minOccurs="0">
            <xs:annotation>
              <xs:documentation>collider</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <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 maxOccurs="unbounded">
        <xs:annotation>
          <xs:documentation>joints</xs:documentation>
        </xs:annotation>
        <xs:element ref="BallJoint">
          <xs:annotation>
            <xs:documentation>massDensityModel</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element ref="DoubleAxisHingeJoint">
          <xs:annotation>
            <xs:documentation>massDensityModel</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element ref="MotorJoint">
          <xs:annotation>
            <xs:documentation>massDensityModel</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element ref="SingleAxisHingeJoint">
          <xs:annotation>
            <xs:documentation>massDensityModel</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element ref="SliderJoint">
          <xs:annotation>
            <xs:documentation>massDensityModel</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element ref="UniversalJoint">
          <xs:annotation>
            <xs:documentation>massDensityModel</xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:choice>
      <xs:choice>
        <xs:sequence minOccurs="0">
          <xs:element ref="CollisionCollection">
            <xs:annotation>
              <xs:documentation>collider</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element ref="RigidBody">
              <xs:annotation>
                <xs:documentation>bodies</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element ref="ProtoInstance">
              <xs:annotation>
                <xs:documentation>Appropriately typed substitution node</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
        </xs:sequence>
        <xs:sequence minOccurs="0">
          <xs:choice maxOccurs="unbounded">
            <xs:element ref="RigidBody">
              <xs:annotation>
                <xs:documentation>bodies</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:choice>
          <xs:element ref="CollisionCollection" minOccurs="0">
            <xs:annotation>
              <xs:documentation>collider</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:choice minOccurs="0" maxOccurs="unbounded">
            <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:group>