element ProtoDeclare
diagram x3d-4.0_diagrams/x3d-4.0_p198.png
type extension of X3DStatement
properties
content complex
children ProtoInterface ProtoBody
used by
group ChildContentModelSceneGraphStructure
attributes
Name  Type  Use  Default  Fixed  Annotation
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.
                    This attribute is only functional if the X3D model is loaded within an HTML page.
               
id  xs:NMTOKEN        
appinfo

                    The id attribute is a unique identifier, reserved for use by HTML5/DOM pages, independent of DEF labeling and internal X3D node referencing.
                    This attribute is only functional if the X3D model is loaded within an HTML page.
               
style  SFString        
appinfo

                    The style attribute provides an inline block of CSS for element styling, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
                    This attribute is only functional if the X3D model is loaded within an HTML page.
               
name  xs:NMTOKEN  required      
appinfo  SFString        
documentation  SFString        
annotation
appinfo
<xs:element name="ProtoInterface" type="SFNode" default="ProtoInterface"/>
<xs:element name="ProtoBody" type="SFNode" default="ProtoBody"/>
<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"/>
                ProtoDeclare defines new Prototype nodes.  Nested ProtoDeclares and ProtoInstances are allowed by the specification.
           
source <xs:element name="ProtoDeclare">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="ProtoInterface" type="SFNode" default="ProtoInterface"/>
     
<xs:element name="ProtoBody" type="SFNode" default="ProtoBody"/>
     
<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"/>
                ProtoDeclare defines new Prototype nodes.  Nested ProtoDeclares and ProtoInstances are allowed by the specification.
           
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19776-1/V3.3/Part01/concepts.html#PrototypeAndFieldDeclarationSyntax"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DStatement">
       
<xs:sequence>
         
<xs:element ref="ProtoInterface" minOccurs="0"/>
         
<xs:element ref="ProtoBody"/>
       
</xs:sequence>
       
<xs:attribute name="name" type="xs:NMTOKEN" use="required">
         
<xs:annotation>
           
<xs:documentation source="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NameTyping"/>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="appinfo" type="SFString"/>
       
<xs:attribute name="documentation" type="SFString"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ProtoDeclare/@name
type xs:NMTOKEN
properties
use required
source <xs:attribute name="name" type="xs:NMTOKEN" use="required">
 
<xs:annotation>
   
<xs:documentation source="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NameTyping"/>
 
</xs:annotation>
</xs:attribute>

attribute ProtoDeclare/@appinfo
type SFString
source <xs:attribute name="appinfo" type="SFString"/>

attribute ProtoDeclare/@documentation
type SFString
source <xs:attribute name="documentation" type="SFString"/>


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