element ComposedShader
diagram x3d-4.0_diagrams/x3d-4.0_p45.png
properties
content complex
children field IS MetadataBoolean MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString ShaderPart ProtoInstance
used by
group AppearanceChildContentModelNoProtoInstance
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).
               
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.
               
language  SFString        
containerField  xs:NMTOKEN    shaders    
documentation
parent Appearance node
annotation
appinfo
<xs:element name="IS" type="SFNode" fixed="inputOutputField" default="IS"/>
<xs:element name="field" type="MFNode" default="field"/>
<xs:element name="metadata" type="SFNode" fixed="inputOutputField" default="X3DMetadataObject"/>
<xs:element name="parts" type="MFNode" fixed="inputOutputField" default="ShaderPart"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DShaderNode"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DProgrammableShaderObject"/>
<!-- language, activate, isSelected, isValid inherited from X3DShaderNode -->
<xs:attribute name="activate" type="SFBool" fixed="inputOnlyField"/>
<xs:attribute name="isSelected" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="isValid" type="SFBool" fixed="outputOnlyField"/>
<xs:attribute name="language" type="shaderLanguageValues" fixed="initializeOnlyField"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shaders"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
                ComposedShader can contain field declarations, but no CDATA section of plain-text source code, since programs are composed from child ShaderPart nodes.
           
source <xs:element name="ComposedShader">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="IS" type="SFNode" fixed="inputOutputField" default="IS"/>
     
<xs:element name="field" type="MFNode" default="field"/>
     
<xs:element name="metadata" type="SFNode" fixed="inputOutputField" default="X3DMetadataObject"/>
     
<xs:element name="parts" type="MFNode" fixed="inputOutputField" default="ShaderPart"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DShaderNode"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DProgrammableShaderObject"/>
     
<!-- language, activate, isSelected, isValid inherited from X3DShaderNode -->
     
<xs:attribute name="activate" type="SFBool" fixed="inputOnlyField"/>
     
<xs:attribute name="isSelected" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="isValid" type="SFBool" fixed="outputOnlyField"/>
     
<xs:attribute name="language" type="shaderLanguageValues" fixed="initializeOnlyField"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shaders"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
                ComposedShader can contain field declarations, but no CDATA section of plain-text source code, since programs are composed from child ShaderPart nodes.
           
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/shaders.html#ComposedShader"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:sequence minOccurs="0">
     
<xs:annotation>
       
<xs:documentation>implements X3DShaderNode, X3DProgrammableShaderObject (and contains no CDATA source)</xs:documentation>
     
</xs:annotation>
     
<xs:element ref="field" minOccurs="0" maxOccurs="unbounded"/>
     
<xs:element ref="IS" minOccurs="0"/>
     
<xs:group ref="ChildContentModelCore" minOccurs="0">
       
<xs:annotation>
         
<xs:documentation>metadata</xs:documentation>
       
</xs:annotation>
     
</xs:group>
     
<xs:choice minOccurs="0" maxOccurs="unbounded">
       
<xs:annotation>
         
<xs:documentation>parts</xs:documentation>
       
</xs:annotation>
       
<xs:element ref="ShaderPart"/>
       
<xs:element ref="ProtoInstance">
         
<xs:annotation>
           
<xs:documentation>Appropriately typed substitution node</xs:documentation>
         
</xs:annotation>
       
</xs:element>
     
</xs:choice>
   
</xs:sequence>
   
<xs:attributeGroup ref="DEF_USE"/>
   
<xs:attributeGroup ref="globalAttributes"/>
   
<xs:attribute name="language" type="SFString"/>
   
<xs:attribute name="containerField" type="xs:NMTOKEN" default="shaders">
     
<xs:annotation>
       
<xs:documentation>parent Appearance node</xs:documentation>
     
</xs:annotation>
   
</xs:attribute>
   
<!-- Specially constructed case of <xs:extension base="X3DShaderNode"> -->
   
<!-- ComposedShader does not directly derive from X3DNode because of the need to have field children come first, before IS and ChildContentModelCore. -->
 
</xs:complexType>
</xs:element>

attribute ComposedShader/@language
type SFString
source <xs:attribute name="language" type="SFString"/>

attribute ComposedShader/@containerField
type xs:NMTOKEN
properties
default shaders
annotation
documentation
parent Appearance node
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="shaders">
 
<xs:annotation>
   
<xs:documentation>parent Appearance node</xs:documentation>
 
</xs:annotation>
</xs:attribute>


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