element ProtoInstance
diagram x3d-3.2_diagrams/x3d-3.2_p168.png
type extension of X3DPrototypeInstance
properties
content complex
children fieldValue IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
elements BoundedPhysicsModel CADFace CADPart CollidableOffset CollidableShape CollisionCollection CollisionSensor CollisionSpace ComposedCubeMapTexture ComposedShader ComposedTexture3D Contact Contour2D DISEntityManager ElevationGrid GeneratedCubeMapTexture GeoMetadata HAnimHumanoid HAnimJoint ImageCubeMapTexture LayerSet LinePickSensor MetadataSet MultiTexture MultiTextureCoordinate MultiTextureTransform NurbsCurve NurbsOrientationInterpolator NurbsPatchSurface NurbsPositionInterpolator NurbsSet NurbsSurfaceInterpolator NurbsSweptSurface NurbsSwungSurface NurbsTrimmedSurface ParticleSystem PickableGroup PointPickSensor PolylineEmitter PrimitivePickSensor SurfaceEmitter TransformSensor ViewpointGroup VolumeEmitter VolumePickSensor
complexTypes X3DTexture2DNode X3DTexture3DNode
groups AppearanceChildContentModel ChildContentModelProtoInstance ColorCoordinateContentModel ColorCoordinateNormalTexCoordContentModel ColorNormalTexCoordContentModel ComposedGeometryContentModel RigidBodyCollectionContentModel RigidBodyContentModel RigidJointNodeContentModel ShapeChildContentModel SoundChildContentModel TextChildContentModel TextureBackgroundChildContentModel
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).
name  xs:NMTOKEN        
appinfo
name attribute is ordinarily required, unless this is a USE node
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:element name="fieldValue" type="MFNode" default="fieldValue"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DChildNode"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Core"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
ProtoInstance can override field default values via fieldValue initializations.
Non-recursive nested ProtoInstance and ProtoDeclare statements are allowed within a ProtoDeclare.
source <xs:element name="ProtoInstance">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="fieldValue" type="MFNode" default="fieldValue"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DChildNode"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Core"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
ProtoInstance can override field default values via fieldValue initializations.
Non-recursive nested ProtoInstance and ProtoDeclare statements are allowed within a ProtoDeclare.
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/concepts.html#ProtoInstanceAndFieldValueStatement"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DPrototypeInstance">
       
<xs:attributeGroup ref="DEF_USE"/>
       
<xs:attribute name="name" type="xs:NMTOKEN">
         
<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:attributeGroup ref="globalAttributes"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ProtoInstance/@name
type xs:NMTOKEN
annotation
appinfo
name attribute is ordinarily required, unless this is a USE node
source <xs:attribute name="name" type="xs:NMTOKEN">
 
<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 ProtoInstance/@containerField
type xs:NMTOKEN
properties
default children
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="children"/>


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