Information technology — Computer graphics, image processing and environmental data representation — Extensible 3D (X3D) language bindings —
Part 2: Java

Annex B

(normative)

Abstract node interfaces

--- X3D separator bar ---

cubeB.1  Introduction and topics

B.1.1  Introduction

This annex provides the definition of the interface signature for each interface that represents the abstract node instance defined in ISO/IEC 19775-2.

B.1.2  Topics

See Table B.1 for the topics in this clause.

Table B.1 — Topics

TODO

B.1.3 Conventions

This annex describes all the known interfaces that represent abstract node types. It also defines the other types such as interfaces that represent fields scenes etc. The convention used is to provide the definition of the class using the Java language syntax as would be seen in a Java source file.

The naming convention used by to construct interfaces follows these rules:

Extra convenience methods may be supplied by the interfaces on an as-desired basis.

--- X3D separator bar ---

cubeB.2  Node type interfaces

The following abstract interfaces do not include getter/setter accessor methods for any fields defined in parent abstract types.

--- X3D separator bar ---

B.2.1 X3DAppearanceChildNode

/** X3DAppearanceChildNode defines an abstract node interface that extends interface X3DNode.
  * Nodes of this type can be used as child nodes for Appearance. */

public interface X3DAppearanceChildNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.2 X3DAppearanceNode

/** X3DAppearanceNode defines an abstract node interface that extends interface X3DNode.
  * Base type for all Appearance nodes. */

public interface X3DAppearanceNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.3 X3DBackgroundNode

/** X3DBackgroundNode defines an abstract node interface that extends interfaces X3DBindableNode, X3DChildNode, and X3DNode.
  * Abstract type from which all backgrounds inherit, also defining a background binding stack. */

public interface X3DBackgroundNode extends X3DBindableNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of float results array in radians from MFFloat inputOutput field named "groundAngle" */
  public float[] getGroundAngle ();

  /** Return number of primitive values in "groundAngle" array */
  public int getNumGroundAngle ();

  /** Assign float array in radians to MFFloat inputOutput field named "groundAngle" */
  public void setGroundAngle (float[] angles) throws InvalidFieldValueException;

  /** Assign single float value in radians as the MFFloat array for inputOutput field named "groundAngle" */
  public void setGroundAngle (float angle) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array using RGB values [0..1] from MFColor inputOutput field named "groundColor" */
  public void getGroundColor (float[] result);

  /** Return number of 3-tuple primitive values in "groundColor" array */
  public int getNumGroundColor ();

  /** Assign 3-tuple float array using RGB values [0..1] to MFColor inputOutput field named "groundColor" */
  public void setGroundColor (float[] colors) throws InvalidFieldValueException;

  /** Return array of float results array in radians from MFFloat inputOutput field named "skyAngle" */
  public float[] getSkyAngle ();

  /** Return number of primitive values in "skyAngle" array */
  public int getNumSkyAngle ();

  /** Assign float array in radians to MFFloat inputOutput field named "skyAngle" */
  public void setSkyAngle (float[] angles) throws InvalidFieldValueException;

  /** Assign single float value in radians as the MFFloat array for inputOutput field named "skyAngle" */
  public void setSkyAngle (float angle) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array using RGB values [0..1] from MFColor inputOutput field named "skyColor" */
  public void getSkyColor (float[] result);

  /** Return number of 3-tuple primitive values in "skyColor" array */
  public int getNumSkyColor ();

  /** Assign 3-tuple float array using RGB values [0..1] to MFColor inputOutput field named "skyColor" */
  public void setSkyColor (float[] colors) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return float result [] from intensityType type inputOutput field named "transparency" */
  public float getTransparency ();

  /** Assign float value [] to intensityType type inputOutput field named "transparency" */
  public void setTransparency (float value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Assign boolean value to SFBool inputOnly field named "set_bind" */
  public void setBind (boolean value);

  /** Return double result in seconds from SFTime outputOnly field named "bindTime" */
  public double getBindTime ();

  /** Return boolean result from SFBool outputOnly field named "isBound" */
  public boolean getIsBound ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.4 X3DBindableNode

/** X3DBindableNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Bindable nodes implement the binding stack, so that only one of each node type is active at a given time. */

public interface X3DBindableNode extends X3DChildNode
{
  /** Assign boolean value to SFBool inputOnly field named "set_bind" */
  public void setBind (boolean value);

  /** Return double result in seconds from SFTime outputOnly field named "bindTime" */
  public double getBindTime ();

  /** Return boolean result from SFBool outputOnly field named "isBound" */
  public boolean getIsBound ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.5 X3DChaserNode

/** X3DChaserNode defines an abstract node interface that extends interfaces X3DFollowerNode, X3DChildNode, and X3DNode. */

public interface X3DChaserNode extends X3DFollowerNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from  type initializeOnly field named "duration" */
  public double getDuration ();

  /** Assign double value in seconds to  type initializeOnly field named "duration" */
  public void setDuration (double timestamp) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.6 X3DChildNode

/** X3DChildNode defines an abstract node interface that extends interface X3DNode.
  * A node that implements X3DChildNode is one of the legal children for a X3DGroupingNode parent. */

public interface X3DChildNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.7 X3DColorNode

/** X3DColorNode defines an abstract node interface that extends interfaces X3DGeometricPropertyNode and X3DNode.
  * Base type for color specifications in X3D. */

public interface X3DColorNode extends X3DGeometricPropertyNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.8 X3DComposableVolumeRenderStyleNode

/** X3DComposableVolumeRenderStyleNode defines an abstract node interface that extends interfaces X3DVolumeRenderStyleNode and X3DNode. */

public interface X3DComposableVolumeRenderStyleNode extends X3DVolumeRenderStyleNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.9 X3DComposedGeometryNode

/** X3DComposedGeometryNode defines an abstract node interface that extends interfaces X3DGeometryNode and X3DNode.
  * Composed geometry nodes produce renderable geometry, can contain Color Coordinate Normal TextureCoordinate, and are contained by a Shape node. */

public interface X3DComposedGeometryNode extends X3DGeometryNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool initializeOnly field named "ccw" */
  public boolean getCcw ();

  /** Assign boolean value to SFBool initializeOnly field named "ccw" */
  public void setCcw (boolean value);

  /** Return boolean result from SFBool initializeOnly field named "colorPerVertex" */
  public boolean getColorPerVertex ();

  /** Assign boolean value to SFBool initializeOnly field named "colorPerVertex" */
  public void setColorPerVertex (boolean color);

  /** Return boolean result from SFBool initializeOnly field named "normalPerVertex" */
  public boolean getNormalPerVertex ();

  /** Assign boolean value to SFBool initializeOnly field named "normalPerVertex" */
  public void setNormalPerVertex (boolean value);

  /** Return boolean result from SFBool initializeOnly field named "solid" */
  public boolean getSolid ();

  /** Assign boolean value to SFBool initializeOnly field named "solid" */
  public void setSolid (boolean value);

  /** Return array of X3DVertexAttributeNode results array (using a properly typed node array or X3DPrototypeInstance array) from MFNode inputOutput field named "attrib" */
  public void getAttrib (X3DNode[] result);

  /** Return number of nodes in "attrib" array */
  public int getNumAttrib ();

  /** Assign X3DVertexAttributeNode array (using a properly typed node array) to MFNode inputOutput field named "attrib" */
  public void setAttrib (X3DVertexAttributeNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DVertexAttributeNode value (using a properly typed node) as the MFNode array for inputOutput field named "attrib" */
  public void setAttrib (X3DVertexAttributeNode node) throws InvalidFieldValueException;

  /** Assign X3DVertexAttributeNode array (using a properly typed protoInstance array) to MFNode inputOutput field named "attrib" */
  public void setAttrib (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DVertexAttributeNode array (using a properly typed node array) to MFNode inputOutput field named "attrib" */
  public void setAttrib (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Return X3DColorNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "color" */
  public void getColor (X3DNode result);

  /** Assign X3DColorNode value (using a properly typed node) to SFNode inputOutput field named "color" */
  public void setColor (X3DColorNode color) throws InvalidFieldValueException;

  /** Assign X3DColorNode value (using a properly typed protoInstance) */
  public void setColor (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return X3DCoordinateNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "coord" */
  public void getCoord (X3DNode result);

  /** Assign X3DCoordinateNode value (using a properly typed node) to SFNode inputOutput field named "coord" */
  public void setCoord (X3DCoordinateNode node) throws InvalidFieldValueException;

  /** Assign X3DCoordinateNode value (using a properly typed protoInstance) */
  public void setCoord (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return FogCoordinate result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "fogCoord" */
  public void getFogCoord (X3DNode result);

  /** Assign FogCoordinate value (using a properly typed node) to SFNode inputOutput field named "fogCoord" */
  public void setFogCoord (FogCoordinate node) throws InvalidFieldValueException;

  /** Assign FogCoordinate value (using a properly typed protoInstance) */
  public void setFogCoord (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return X3DNormalNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "normal" */
  public void getNormal (X3DNode result);

  /** Assign X3DNormalNode value (using a properly typed node) to SFNode inputOutput field named "normal" */
  public void setNormal (X3DNormalNode node) throws InvalidFieldValueException;

  /** Assign X3DNormalNode value (using a properly typed protoInstance) */
  public void setNormal (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return X3DTextureCoordinateNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "texCoord" */
  public void getTexCoord (X3DNode result);

  /** Assign X3DTextureCoordinateNode value (using a properly typed node) to SFNode inputOutput field named "texCoord" */
  public void setTexCoord (X3DTextureCoordinateNode node) throws InvalidFieldValueException;

  /** Assign X3DTextureCoordinateNode value (using a properly typed protoInstance) */
  public void setTexCoord (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.10 X3DCoordinateNode

/** X3DCoordinateNode defines an abstract node interface that extends interfaces X3DGeometricPropertyNode and X3DNode.
  * Base type for all coordinate node types in X3D. */

public interface X3DCoordinateNode extends X3DGeometricPropertyNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.11 X3DDamperNode

/** X3DDamperNode defines an abstract node interface that extends interfaces X3DFollowerNode, X3DChildNode, and X3DNode. */

public interface X3DDamperNode extends X3DFollowerNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from  type inputOutput field named "tau" */
  public double getTau ();

  /** Assign double value in seconds to  type inputOutput field named "tau" */
  public void setTau (double timestamp) throws InvalidFieldValueException;

  /** Return float result [] from SFFloat inputOutput field named "tolerance" */
  public float getTolerance ();

  /** Assign float value [] to SFFloat inputOutput field named "tolerance" */
  public void setTolerance (float value) throws InvalidFieldValueException;

  /** Return int result [] from  type initializeOnly field named "order" */
  public int getOrder ();

  /** Assign int value [] to  type initializeOnly field named "order" */
  public void setOrder (int value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.12 X3DDragSensorNode

/** X3DDragSensorNode defines an abstract node interface that extends interfaces X3DPointingDeviceSensorNode, X3DSensorNode, X3DChildNode, and X3DNode.
  * Base type for all drag-style pointing device sensors. */

public interface X3DDragSensorNode extends X3DPointingDeviceSensorNode
{
  /** Return array of 3-tuple float results array [] from SFVec3f outputOnly field named "trackPoint_changed" */
  public void getTrackPoint (float[] result);

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "autoOffset" */
  public boolean getAutoOffset ();

  /** Assign boolean value to SFBool inputOutput field named "autoOffset" */
  public void setAutoOffset (boolean value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isOver" */
  public boolean getIsOver ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "description" */
  public String getDescription ();

  /** Assign String value [] to SFString inputOutput field named "description" */
  public void setDescription (String value);

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.13 X3DEnvironmentalSensorNode

/** X3DEnvironmentalSensorNode defines an abstract node interface that extends interfaces X3DSensorNode, X3DChildNode, and X3DNode.
  * Base type for the environmental sensor nodes ProximitySensor, TransformSensor and VisibilitySensor. */

public interface X3DEnvironmentalSensorNode extends X3DSensorNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "size" */
  public void getSize (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "size" */
  public void setSize (float[] value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.14 X3DEnvironmentTextureNode

/** X3DEnvironmentTextureNode defines an abstract node interface that extends interfaces X3DTextureNode, X3DAppearanceChildNode, and X3DNode.
  * Base type for all nodes that specify cubic environment map sources for texture images. */

public interface X3DEnvironmentTextureNode extends X3DTextureNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.15 X3DFollowerNode

/** X3DFollowerNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode. */

public interface X3DFollowerNode extends X3DChildNode
{
  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.16 X3DFontStyleNode

/** X3DFontStyleNode defines an abstract node interface that extends interface X3DNode.
  * Base type for all font style nodes. */

public interface X3DFontStyleNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.17 X3DGeometricPropertyNode

/** X3DGeometricPropertyNode defines an abstract node interface that extends interface X3DNode.
  * Base type for all geometric property node types. */

public interface X3DGeometricPropertyNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.18 X3DGeometryNode

/** X3DGeometryNode defines an abstract node interface that extends interface X3DNode.
  * Geometry nodes produce renderable geometry and are contained by a Shape node. */

public interface X3DGeometryNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.19 X3DGroupingNode

/** X3DGroupingNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Grouping nodes can contain other nodes as children, thus making up the backbone of a scene graph. */

public interface X3DGroupingNode extends X3DChildNode, X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "addChildren" */
  public void addChildren (X3DChildNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DChildNode value (using a properly typed node) as the MFNode array for inputOnly field named "addChildren" */
  public void addChildren (X3DChildNode node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed protoInstance array) to MFNode inputOnly field named "addChildren" */
  public void addChildren (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "addChildren" */
  public void addChildren (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "removeChildren" */
  public void removeChildren (X3DChildNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DChildNode value (using a properly typed node) as the MFNode array for inputOnly field named "removeChildren" */
  public void removeChildren (X3DChildNode node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed protoInstance array) to MFNode inputOnly field named "removeChildren" */
  public void removeChildren (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "removeChildren" */
  public void removeChildren (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Return array of X3DChildNode results array (using a properly typed node array or X3DPrototypeInstance array) from MFNode inputOutput field named "children" */
  public void getChildren (X3DNode[] result);

  /** Return number of nodes in "children" array */
  public int getNumChildren ();

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOutput field named "children" */
  public void setChildren (X3DChildNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DChildNode value (using a properly typed node) as the MFNode array for inputOutput field named "children" */
  public void setChildren (X3DChildNode node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed protoInstance array) to MFNode inputOutput field named "children" */
  public void setChildren (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOutput field named "children" */
  public void setChildren (X3DNode[] nodes) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.20 X3DInfoNode

/** X3DInfoNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type for all nodes that contain only information without visual semantics. */

public interface X3DInfoNode extends X3DChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.21 X3DInterpolatorNode

/** X3DInterpolatorNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Interpolator nodes are designed for linear keyframed animation. Interpolators are driven by an input key ranging [0..1] and produce corresponding piecewise-linear output functions. */

public interface X3DInterpolatorNode extends X3DChildNode
{
  /** Assign float value [] to SFFloat inputOnly field named "set_fraction" */
  public void setFraction (float value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of float results array [] from MFFloat inputOutput field named "key" */
  public float[] getKey ();

  /** Return number of primitive values in "key" array */
  public int getNumKey ();

  /** Assign float array [] to MFFloat inputOutput field named "key" */
  public void setKey (float[] values) throws InvalidFieldValueException;

  /** Assign single float value [] as the MFFloat array for inputOutput field named "key" */
  public void setKey (float value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.22 X3DKeyDeviceSensorNode

/** X3DKeyDeviceSensorNode defines an abstract node interface that extends interfaces X3DSensorNode, X3DChildNode, and X3DNode.
  * Base type for all sensor node types that operate using key devices. */

public interface X3DKeyDeviceSensorNode extends X3DSensorNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.23 X3DLayerNode

/** X3DLayerNode defines an abstract node interface that extends interface X3DNode. */

public interface X3DLayerNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "isPickable" */
  public boolean getIsPickable ();

  /** Assign boolean value to SFBool inputOutput field named "isPickable" */
  public void setIsPickable (boolean value);

  /** Return X3DViewportNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "viewport" */
  public void getViewport (X3DNode result);

  /** Assign X3DViewportNode value (using a properly typed node) to SFNode inputOutput field named "viewport" */
  public void setViewport (X3DViewportNode node) throws InvalidFieldValueException;

  /** Assign X3DViewportNode value (using a properly typed protoInstance) */
  public void setViewport (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.24 X3DLayoutNode

/** X3DLayoutNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode. */

public interface X3DLayoutNode extends X3DChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.25 X3DLightNode

/** X3DLightNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Light nodes provide illumination for rendering geometry in the scene. */

public interface X3DLightNode extends X3DChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return float result [] from intensityType type inputOutput field named "ambientIntensity" */
  public float getAmbientIntensity ();

  /** Assign float value [] to intensityType type inputOutput field named "ambientIntensity" */
  public void setAmbientIntensity (float value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array using RGB values [0..1] from SFColor inputOutput field named "color" */
  public void getColor (float[] result);

  /** Assign 3-tuple float array using RGB values [0..1] to SFColor inputOutput field named "color" */
  public void setColor (float[] color) throws InvalidFieldValueException;

  /** Return float result [] from intensityType type inputOutput field named "intensity" */
  public float getIntensity ();

  /** Assign float value [] to intensityType type inputOutput field named "intensity" */
  public void setIntensity (float value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "on" */
  public boolean getOn ();

  /** Assign boolean value to SFBool inputOutput field named "on" */
  public void setOn (boolean value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.26 X3DMaterialNode

/** X3DMaterialNode defines an abstract node interface that extends interfaces X3DAppearanceChildNode and X3DNode. */

public interface X3DMaterialNode extends X3DAppearanceChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.27 X3DNBodyCollidableNode

/** X3DNBodyCollidableNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode. */

public interface X3DNBodyCollidableNode extends X3DChildNode, X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return array of 4-tuple float results array in radians from SFRotation inputOutput field named "rotation" */
  public float[] getRotation ();

  /** Assign 4-tuple float array in radians to SFRotation inputOutput field named "rotation" */
  public void setRotation (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f inputOutput field named "translation" */
  public void getTranslation (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f inputOutput field named "translation" */
  public void setTranslation (float[] value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.28 X3DNBodyCollisionSpaceNode

/** X3DNBodyCollisionSpaceNode defines an abstract node interface that extends interface X3DNode. */

public interface X3DNBodyCollisionSpaceNode extends X3DNode, X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.29 X3DNetworkSensorNode

/** X3DNetworkSensorNode defines an abstract node interface that extends interfaces X3DSensorNode, X3DChildNode, and X3DNode.
  * Base typefor all sensors that generate events based on network activity. */

public interface X3DNetworkSensorNode extends X3DSensorNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.30 X3DNode

/** X3DNode defines an abstract node interface.
  * All instantiable nodes implement X3DNode, which corresponds to SFNode in the X3D specification. */

public interface X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Dispose of this node's resources. */
  void dispose();

  /** Get a field for this node by name. */
  X3DField getField (String name);

  /** Get list of available fields in this node. */
  X3DFieldDefinition[] getFieldDefinitions();

  /** Get the name of this node. */
  String getNodeName();

  /** Determine if node setup is completed. */
  boolean isRealized ();

  /** Notify node that setup stage is complete. */
  void realize ();
}
--- X3D separator bar ---

B.2.31 X3DNormalNode

/** X3DNormalNode defines an abstract node interface that extends interfaces X3DGeometricPropertyNode and X3DNode.
  * Base type for all normal node types in X3D. */

public interface X3DNormalNode extends X3DGeometricPropertyNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.32 X3DNurbsControlCurveNode

/** X3DNurbsControlCurveNode defines an abstract node interface that extends interface X3DNode.
  * Base type for all nodes that provide control curve information in 2D space. */

public interface X3DNurbsControlCurveNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 2-tuple double results array [] from MFVec2d inputOutput field named "controlPoint" */
  public void getControlPoint (double[] result);

  /** Return number of 2-tuple primitive values in "controlPoint" array */
  public int getNumControlPoint ();

  /** Assign 2-tuple double array [] to MFVec2d inputOutput field named "controlPoint" */
  public void setControlPoint (double[] values) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.33 X3DNurbsSurfaceGeometryNode

/** X3DNurbsSurfaceGeometryNode defines an abstract node interface that extends interfaces X3DParametricGeometryNode, X3DGeometryNode, and X3DNode.
  * Abstract geometry type for all types of NURBS surfaces. */

public interface X3DNurbsSurfaceGeometryNode extends X3DParametricGeometryNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool initializeOnly field named "uClosed" */
  public boolean getUClosed ();

  /** Assign boolean value to SFBool initializeOnly field named "uClosed" */
  public void setUClosed (boolean value);

  /** Return boolean result from SFBool initializeOnly field named "vClosed" */
  public boolean getVClosed ();

  /** Assign boolean value to SFBool initializeOnly field named "vClosed" */
  public void setVClosed (boolean value);

  /** Return int result [] from SFInt32 initializeOnly field named "uDimension" */
  public int getUDimension ();

  /** Assign int value [] to SFInt32 initializeOnly field named "uDimension" */
  public void setUDimension (int value) throws InvalidFieldValueException;

  /** Return int result [] from SFInt32 initializeOnly field named "vDimension" */
  public int getVDimension ();

  /** Assign int value [] to SFInt32 initializeOnly field named "vDimension" */
  public void setVDimension (int value) throws InvalidFieldValueException;

  /** Return array of double results array [] from MFDouble initializeOnly field named "uKnot" */
  public double[] getUKnot ();

  /** Return number of primitive values in "uKnot" array */
  public int getNumUKnot ();

  /** Assign double array [] to MFDouble initializeOnly field named "uKnot" */
  public void setUKnot (double[] values) throws InvalidFieldValueException;

  /** Assign single double value [] as the MFDouble array for initializeOnly field named "uKnot" */
  public void setUKnot (double value) throws InvalidFieldValueException;

  /** Return array of double results array [] from MFDouble initializeOnly field named "vKnot" */
  public double[] getVKnot ();

  /** Return number of primitive values in "vKnot" array */
  public int getNumVKnot ();

  /** Assign double array [] to MFDouble initializeOnly field named "vKnot" */
  public void setVKnot (double[] values) throws InvalidFieldValueException;

  /** Assign single double value [] as the MFDouble array for initializeOnly field named "vKnot" */
  public void setVKnot (double value) throws InvalidFieldValueException;

  /** Return int result [] from SFInt32 initializeOnly field named "uOrder" */
  public int getUOrder ();

  /** Assign int value [] to SFInt32 initializeOnly field named "uOrder" */
  public void setUOrder (int value) throws InvalidFieldValueException;

  /** Return int result [] from SFInt32 initializeOnly field named "vOrder" */
  public int getVOrder ();

  /** Assign int value [] to SFInt32 initializeOnly field named "vOrder" */
  public void setVOrder (int value) throws InvalidFieldValueException;

  /** Return int result [] from SFInt32 inputOutput field named "uTessellation" */
  public int getUTessellation ();

  /** Assign int value [] to SFInt32 inputOutput field named "uTessellation" */
  public void setUTessellation (int value) throws InvalidFieldValueException;

  /** Return int result [] from SFInt32 inputOutput field named "vTessellation" */
  public int getVTessellation ();

  /** Assign int value [] to SFInt32 inputOutput field named "vTessellation" */
  public void setVTessellation (int value) throws InvalidFieldValueException;

  /** Return array of double results array [] from MFDouble inputOutput field named "weight" */
  public double[] getWeight ();

  /** Return number of primitive values in "weight" array */
  public int getNumWeight ();

  /** Assign double array [] to MFDouble inputOutput field named "weight" */
  public void setWeight (double[] values) throws InvalidFieldValueException;

  /** Assign single double value [] as the MFDouble array for inputOutput field named "weight" */
  public void setWeight (double value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool initializeOnly field named "solid" */
  public boolean getSolid ();

  /** Assign boolean value to SFBool initializeOnly field named "solid" */
  public void setSolid (boolean value);

  /** Return X3DCoordinateNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "controlPoint" */
  public void getControlPoint (X3DNode result);

  /** Assign X3DCoordinateNode value (using a properly typed node) to SFNode inputOutput field named "controlPoint" */
  public void setControlPoint (X3DCoordinateNode node) throws InvalidFieldValueException;

  /** Assign X3DCoordinateNode value (using a properly typed protoInstance) */
  public void setControlPoint (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return X3DTextureCoordinateNode|NurbsTextureCoordinate result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "texCoord" */
  public void getTexCoord (X3DNode result);

  /** Assign X3DTextureCoordinateNode|NurbsTextureCoordinate value (using a properly typed node) to SFNode inputOutput field named "texCoord" */
  public void setTexCoord (X3DNode node) throws InvalidFieldValueException;

  /** Assign X3DTextureCoordinateNode|NurbsTextureCoordinate value (using a properly typed protoInstance) */
  public void setTexCoord (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.34 X3DParametricGeometryNode

/** X3DParametricGeometryNode defines an abstract node interface that extends interfaces X3DGeometryNode and X3DNode.
  * Base type for all geometry node types that are created parametrically and use control points to describe the final shape of the surface. */

public interface X3DParametricGeometryNode extends X3DGeometryNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.35 X3DParticleEmitterNode

/** X3DParticleEmitterNode defines an abstract node interface that extends interface X3DNode. */

public interface X3DParticleEmitterNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return float result [] from  type inputOutput field named "speed" */
  public float getSpeed ();

  /** Assign float value [] to  type inputOutput field named "speed" */
  public void setSpeed (float value) throws InvalidFieldValueException;

  /** Return float result [] from  type inputOutput field named "variation" */
  public float getVariation ();

  /** Assign float value [] to  type inputOutput field named "variation" */
  public void setVariation (float value) throws InvalidFieldValueException;

  /** Return float result [] from  type inputOutput field named "mass" */
  public float getMass ();

  /** Assign float value [] to  type inputOutput field named "mass" */
  public void setMass (float value) throws InvalidFieldValueException;

  /** Return float result [] from  type initializeOnly field named "surfaceArea" */
  public float getSurfaceArea ();

  /** Assign float value [] to  type initializeOnly field named "surfaceArea" */
  public void setSurfaceArea (float value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.36 X3DParticlePhysicsModelNode

/** X3DParticlePhysicsModelNode defines an abstract node interface that extends interface X3DNode. */

public interface X3DParticlePhysicsModelNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.37 X3DPickSensorNode

/** X3DPickSensorNode defines an abstract node interface that extends interfaces X3DSensorNode, X3DChildNode, and X3DNode. */

public interface X3DPickSensorNode extends X3DSensorNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString initializeOnly field named "intersectionType" */
  public String getIntersectionType ();

  /** Assign String value [] to SFString initializeOnly field named "intersectionType" */
  public void setIntersectionType (String value);

  /** Return String result ["MATCH_ANY"|"MATCH_EVERY"|"MATCH_ONLY_ONE"] from  type inputOutput field named "matchCriterion" */
  public String getMatchCriterion ();

  /** Assign String value ["MATCH_ANY"|"MATCH_EVERY"|"MATCH_ONLY_ONE"] to  type inputOutput field named "matchCriterion" */
  public void setMatchCriterion (String value) throws InvalidFieldValueException;

  /** Return array of String results array ["ALL","NONE","TERRAIN",...] from MFString inputOutput field named "objectType" */
  public String[] getObjectType ();

  /** Return number of primitive values in "objectType" array */
  public int getNumObjectType ();

  /** Assign String array ["ALL","NONE","TERRAIN",...] to MFString inputOutput field named "objectType" */
  public void setObjectType (String[] values);

  /** Assign single String value ["ALL","NONE","TERRAIN",...] as the MFString array for inputOutput field named "objectType" */
  public void setObjectType (String value);

  /** Return String result ["ANY"|"CLOSEST"|"ALL"|"ALL_SORTED"] from  type initializeOnly field named "sortOrder" */
  public String getSortOrder ();

  /** Assign String value ["ANY"|"CLOSEST"|"ALL"|"ALL_SORTED"] to  type initializeOnly field named "sortOrder" */
  public void setSortOrder (String value) throws InvalidFieldValueException;

  /** Return array of X3DGroupingNode|X3DShapeNode|Inline results array (using a properly typed node array or X3DPrototypeInstance array) from MFNode inputOutput field named "pickTarget" */
  public void getPickTarget (X3DNode[] result);

  /** Return number of nodes in "pickTarget" array */
  public int getNumPickTarget ();

  /** Assign X3DGroupingNode|X3DShapeNode|Inline array (using a properly typed node array) to MFNode inputOutput field named "pickTarget" */
  public void setPickTarget (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DNode[] value (using a properly typed node) as the MFNode array for inputOutput field named "pickTarget" */
  public void setPickTarget (X3DNode node) throws InvalidFieldValueException;

  /** Assign X3DGroupingNode|X3DShapeNode|Inline array (using a properly typed protoInstance array) to MFNode inputOutput field named "pickTarget" */
  public void setPickTarget (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Return array of X3DChildNode results array (using a properly typed node array or X3DPrototypeInstance array) from MFNode outputOnly field named "pickedGeometry" */
  public void getPickedGeometry (X3DNode[] result);

  /** Return number of nodes in "pickedGeometry" array */
  public int getNumPickedGeometry ();

  /** Return X3DGeometryNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "pickingGeometry" */
  public void getPickingGeometry (X3DNode result);

  /** Assign X3DGeometryNode value (using a properly typed node) to SFNode inputOutput field named "pickingGeometry" */
  public void setPickingGeometry (X3DGeometryNode node) throws InvalidFieldValueException;

  /** Assign X3DGeometryNode value (using a properly typed protoInstance) */
  public void setPickingGeometry (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.38 X3DPointingDeviceSensorNode

/** X3DPointingDeviceSensorNode defines an abstract node interface that extends interfaces X3DSensorNode, X3DChildNode, and X3DNode.
  * Base type for all pointing device sensors. */

public interface X3DPointingDeviceSensorNode extends X3DSensorNode
{
  /** Return boolean result from SFBool outputOnly field named "isOver" */
  public boolean getIsOver ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "description" */
  public String getDescription ();

  /** Assign String value [] to SFString inputOutput field named "description" */
  public void setDescription (String value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.39 X3DProductStructureChildNode

/** X3DProductStructureChildNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type marking nodes that are valid product structure children for the CADGeometry component. */

public interface X3DProductStructureChildNode extends X3DChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "name" */
  public String getName ();

  /** Assign String value [] to SFString inputOutput field named "name" */
  public void setName (String value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.40 X3DPrototypeInstance

/** X3DPrototypeInstance defines an abstract interface.
  * Base type for all prototype instances. Note that direct children nodes are disallowed, instead let fieldValue with type SFNode/MFNode contain them. Current practice is that, if desired, prototype authors must explicitly add the metadata SFNode field in the ProtoInterface. */

public interface X3DPrototypeInstance extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.41 X3DRigidJointNode

/** X3DRigidJointNode defines an abstract node interface that extends interface X3DNode. */

public interface X3DRigidJointNode extends X3DNode, X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of String results array [] from MFString inputOutput field named "forceOutput" */
  public String[] getForceOutput ();

  /** Return number of primitive values in "forceOutput" array */
  public int getNumForceOutput ();

  /** Assign String array [] to MFString inputOutput field named "forceOutput" */
  public void setForceOutput (String[] values);

  /** Assign single String value [] as the MFString array for inputOutput field named "forceOutput" */
  public void setForceOutput (String value);

  /** Return RigidBody result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "body1" */
  public void getBody1 (X3DNode result);

  /** Assign RigidBody value (using a properly typed node) to SFNode inputOutput field named "body1" */
  public void setBody1 (RigidBody node) throws InvalidFieldValueException;

  /** Assign RigidBody value (using a properly typed protoInstance) */
  public void setBody1 (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return RigidBody result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "body2" */
  public void getBody2 (X3DNode result);

  /** Assign RigidBody value (using a properly typed node) to SFNode inputOutput field named "body2" */
  public void setBody2 (RigidBody node) throws InvalidFieldValueException;

  /** Assign RigidBody value (using a properly typed protoInstance) */
  public void setBody2 (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.42 X3DScriptNode

/** X3DScriptNode defines an abstract node interface.
  * This abstract node type is the base type for all scripting nodes. */

public interface X3DScriptNode extends X3DChildNode, X3DUrlObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of String results array [] from MFString inputOutput field named "url" */
  public String[] getUrl ();

  /** Return number of primitive values in "url" array */
  public int getNumUrl ();

  /** Assign String array [] to MFString inputOutput field named "url" */
  public void setUrl (String[] values);

  /** Assign single String value [] as the MFString array for inputOutput field named "url" */
  public void setUrl (String value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.43 X3DSensorNode

/** X3DSensorNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type for all sensors. */

public interface X3DSensorNode extends X3DChildNode
{
  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.44 X3DSequencerNode

/** X3DSequencerNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type from which all Sequencers are derived. */

public interface X3DSequencerNode extends X3DChildNode
{
  /** Assign boolean value to SFBool inputOnly field named "next" */
  public void setNext (boolean value);

  /** Assign boolean value to SFBool inputOnly field named "previous" */
  public void setPrevious (boolean value);

  /** Assign float value [] to SFFloat inputOnly field named "set_fraction" */
  public void setFraction (float value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of float results array [] from MFFloat inputOutput field named "key" */
  public float[] getKey ();

  /** Return number of primitive values in "key" array */
  public int getNumKey ();

  /** Assign float array [] to MFFloat inputOutput field named "key" */
  public void setKey (float[] values) throws InvalidFieldValueException;

  /** Assign single float value [] as the MFFloat array for inputOutput field named "key" */
  public void setKey (float value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.45 X3DShaderNode

/** X3DShaderNode defines an abstract node interface that extends interfaces X3DAppearanceChildNode and X3DNode.
  * Base type for all nodes that specify a programmable shader. */

public interface X3DShaderNode extends X3DAppearanceChildNode
{
  /** Assign boolean value to SFBool inputOnly field named "activate" */
  public void setActivate (boolean value);

  /** Return boolean result from SFBool outputOnly field named "isSelected" */
  public boolean getIsSelected ();

  /** Return boolean result from SFBool outputOnly field named "isValid" */
  public boolean getIsValid ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString initializeOnly field named "language" */
  public String getLanguage ();

  /** Assign String value [] to SFString initializeOnly field named "language" */
  public void setLanguage (String value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.46 X3DShapeNode

/** X3DShapeNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type for all Shape nodes. */

public interface X3DShapeNode extends X3DChildNode, X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;

  /** Return X3DAppearanceNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "appearance" */
  public void getAppearance (X3DNode result);

  /** Assign X3DAppearanceNode value (using a properly typed node) to SFNode inputOutput field named "appearance" */
  public void setAppearance (X3DAppearanceNode node) throws InvalidFieldValueException;

  /** Assign X3DAppearanceNode value (using a properly typed protoInstance) */
  public void setAppearance (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  /** Return X3DGeometryNode result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "geometry" */
  public void getGeometry (X3DNode result);

  /** Assign X3DGeometryNode value (using a properly typed node) to SFNode inputOutput field named "geometry" */
  public void setGeometry (X3DGeometryNode node) throws InvalidFieldValueException;

  /** Assign X3DGeometryNode value (using a properly typed protoInstance) */
  public void setGeometry (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.47 X3DSoundNode

/** X3DSoundNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type for all sound nodes. */

public interface X3DSoundNode extends X3DChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.48 X3DSoundSourceNode

/** X3DSoundSourceNode defines an abstract node interface that extends interfaces X3DTimeDependentNode, X3DChildNode, and X3DNode.
  * Nodes implementing X3DSoundSourceNode are allowed as children of Sound node. */

public interface X3DSoundSourceNode extends X3DTimeDependentNode
{
  /** Return double result in seconds from SFTime outputOnly field named "duration_changed" */
  public double getDuration ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "description" */
  public String getDescription ();

  /** Assign String value [] to SFString inputOutput field named "description" */
  public void setDescription (String value);

  /** Return float result [] from  type inputOutput field named "pitch" */
  public float getPitch ();

  /** Assign float value [] to  type inputOutput field named "pitch" */
  public void setPitch (float value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime outputOnly field named "elapsedTime" */
  public double getElapsedTime ();

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return boolean result from SFBool outputOnly field named "isPaused" */
  public boolean getIsPaused ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "loop" */
  public boolean getLoop ();

  /** Assign boolean value to SFBool inputOutput field named "loop" */
  public void setLoop (boolean value);

  /** Return double result in seconds from SFTime inputOutput field named "pauseTime" */
  public double getPauseTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "pauseTime" */
  public void setPauseTime (double timestamp) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime inputOutput field named "resumeTime" */
  public double getResumeTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "resumeTime" */
  public void setResumeTime (double timestamp) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime inputOutput field named "startTime" */
  public double getStartTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "startTime" */
  public void setStartTime (double timestamp) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime inputOutput field named "stopTime" */
  public double getStopTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "stopTime" */
  public void setStopTime (double timestamp) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.49 X3DTexture2DNode

/** X3DTexture2DNode defines an abstract node interface that extends interfaces X3DTextureNode, X3DAppearanceChildNode, and X3DNode. */

public interface X3DTexture2DNode extends X3DTextureNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool initializeOnly field named "repeatS" */
  public boolean getRepeatS ();

  /** Assign boolean value to SFBool initializeOnly field named "repeatS" */
  public void setRepeatS (boolean value);

  /** Return boolean result from SFBool initializeOnly field named "repeatT" */
  public boolean getRepeatT ();

  /** Assign boolean value to SFBool initializeOnly field named "repeatT" */
  public void setRepeatT (boolean value);

  /** Return TextureProperties result (using a properly typed node or X3DPrototypeInstance) from SFNode initializeOnly field named "textureProperties" */
  public void getTextureProperties (X3DNode result);

  /** Assign TextureProperties value (using a properly typed node) to SFNode initializeOnly field named "textureProperties" */
  public void setTextureProperties (TextureProperties node) throws InvalidFieldValueException;

  /** Assign TextureProperties value (using a properly typed protoInstance) */
  public void setTextureProperties (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.50 X3DTexture3DNode

/** X3DTexture3DNode defines an abstract node interface that extends interfaces X3DTextureNode, X3DAppearanceChildNode, and X3DNode.
  * Base type for all nodes that specify 3D sources for texture images. */

public interface X3DTexture3DNode extends X3DTextureNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool initializeOnly field named "repeatS" */
  public boolean getRepeatS ();

  /** Assign boolean value to SFBool initializeOnly field named "repeatS" */
  public void setRepeatS (boolean value);

  /** Return boolean result from SFBool initializeOnly field named "repeatT" */
  public boolean getRepeatT ();

  /** Assign boolean value to SFBool initializeOnly field named "repeatT" */
  public void setRepeatT (boolean value);

  /** Return boolean result from SFBool initializeOnly field named "repeatR" */
  public boolean getRepeatR ();

  /** Assign boolean value to SFBool initializeOnly field named "repeatR" */
  public void setRepeatR (boolean value);

  /** Return TextureProperties result (using a properly typed node or X3DPrototypeInstance) from SFNode initializeOnly field named "textureProperties" */
  public void getTextureProperties (X3DNode result);

  /** Assign TextureProperties value (using a properly typed node) to SFNode initializeOnly field named "textureProperties" */
  public void setTextureProperties (TextureProperties node) throws InvalidFieldValueException;

  /** Assign TextureProperties value (using a properly typed protoInstance) */
  public void setTextureProperties (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.51 X3DTextureCoordinateNode

/** X3DTextureCoordinateNode defines an abstract node interface that extends interfaces X3DGeometricPropertyNode and X3DNode.
  * Base type for all nodes which specify texture coordinates. */

public interface X3DTextureCoordinateNode extends X3DGeometricPropertyNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.52 X3DTextureNode

/** X3DTextureNode defines an abstract node interface that extends interfaces X3DAppearanceChildNode and X3DNode. */

public interface X3DTextureNode extends X3DAppearanceChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.53 X3DTextureTransformNode

/** X3DTextureTransformNode defines an abstract node interface that extends interfaces X3DAppearanceChildNode and X3DNode.
  * Base type for all nodes which specify a transformation of texture coordinates. */

public interface X3DTextureTransformNode extends X3DAppearanceChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.54 X3DTimeDependentNode

/** X3DTimeDependentNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type from which all time-dependent nodes are derived. */

public interface X3DTimeDependentNode extends X3DChildNode
{
  /** Return double result in seconds from SFTime outputOnly field named "elapsedTime" */
  public double getElapsedTime ();

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return boolean result from SFBool outputOnly field named "isPaused" */
  public boolean getIsPaused ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "loop" */
  public boolean getLoop ();

  /** Assign boolean value to SFBool inputOutput field named "loop" */
  public void setLoop (boolean value);

  /** Return double result in seconds from SFTime inputOutput field named "pauseTime" */
  public double getPauseTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "pauseTime" */
  public void setPauseTime (double timestamp) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime inputOutput field named "resumeTime" */
  public double getResumeTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "resumeTime" */
  public void setResumeTime (double timestamp) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime inputOutput field named "startTime" */
  public double getStartTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "startTime" */
  public void setStartTime (double timestamp) throws InvalidFieldValueException;

  /** Return double result in seconds from SFTime inputOutput field named "stopTime" */
  public double getStopTime ();

  /** Assign double value in seconds to SFTime inputOutput field named "stopTime" */
  public void setStopTime (double timestamp) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.55 X3DTouchSensorNode

/** X3DTouchSensorNode defines an abstract node interface that extends interfaces X3DPointingDeviceSensorNode, X3DSensorNode, X3DChildNode, and X3DNode.
  * Base type for all touch-style pointing device sensors. */

public interface X3DTouchSensorNode extends X3DPointingDeviceSensorNode
{
  /** Return double result in seconds from SFTime outputOnly field named "touchTime" */
  public double getTouchTime ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool outputOnly field named "isOver" */
  public boolean getIsOver ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "description" */
  public String getDescription ();

  /** Assign String value [] to SFString inputOutput field named "description" */
  public void setDescription (String value);

  /** Return boolean result from SFBool outputOnly field named "isActive" */
  public boolean getIsActive ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.56 X3DTriggerNode

/** X3DTriggerNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode.
  * Base type from which all trigger nodes are derived. */

public interface X3DTriggerNode extends X3DChildNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.57 X3DVertexAttributeNode

/** X3DVertexAttributeNode defines an abstract node interface that extends interfaces X3DGeometricPropertyNode and X3DNode.
  * Base type for all nodes that specify per-vertex attribute information to the shader. */

public interface X3DVertexAttributeNode extends X3DGeometricPropertyNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "name" */
  public String getName ();

  /** Assign String value [] to SFString inputOutput field named "name" */
  public void setName (String value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.58 X3DViewpointNode

/** X3DViewpointNode defines an abstract node interface that extends interfaces X3DBindableNode, X3DChildNode, and X3DNode.
  * Node type X3DViewpointNode defines a specific location in the local coordinate system from which the user may view the scene, and also defines a viewpoint binding stack. */

public interface X3DViewpointNode extends X3DBindableNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "description" */
  public String getDescription ();

  /** Assign String value [] to SFString inputOutput field named "description" */
  public void setDescription (String value);

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "jump" */
  public boolean getJump ();

  /** Assign boolean value to SFBool inputOutput field named "jump" */
  public void setJump (boolean value);

  /** Return array of 4-tuple float results array in radians from SFRotation inputOutput field named "orientation" */
  public float[] getOrientation ();

  /** Assign 4-tuple float array in radians to SFRotation inputOutput field named "orientation" */
  public void setOrientation (float[] value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "retainUserOffsets" */
  public boolean getRetainUserOffsets ();

  /** Assign boolean value to SFBool inputOutput field named "retainUserOffsets" */
  public void setRetainUserOffsets (boolean value);

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Assign boolean value to SFBool inputOnly field named "set_bind" */
  public void setBind (boolean value);

  /** Return double result in seconds from SFTime outputOnly field named "bindTime" */
  public double getBindTime ();

  /** Return boolean result from SFBool outputOnly field named "isBound" */
  public boolean getIsBound ();

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.59 X3DViewportNode

/** X3DViewportNode defines an abstract node interface that extends interfaces X3DGroupingNode, X3DChildNode, and X3DNode.
  * Grouping nodes can contain other nodes as children, thus making up the backbone of a scene graph. */

public interface X3DViewportNode extends X3DGroupingNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "addChildren" */
  public void addChildren (X3DChildNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DChildNode value (using a properly typed node) as the MFNode array for inputOnly field named "addChildren" */
  public void addChildren (X3DChildNode node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed protoInstance array) to MFNode inputOnly field named "addChildren" */
  public void addChildren (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "addChildren" */
  public void addChildren (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "removeChildren" */
  public void removeChildren (X3DChildNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DChildNode value (using a properly typed node) as the MFNode array for inputOnly field named "removeChildren" */
  public void removeChildren (X3DChildNode node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed protoInstance array) to MFNode inputOnly field named "removeChildren" */
  public void removeChildren (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOnly field named "removeChildren" */
  public void removeChildren (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Return array of X3DChildNode results array (using a properly typed node array or X3DPrototypeInstance array) from MFNode inputOutput field named "children" */
  public void getChildren (X3DNode[] result);

  /** Return number of nodes in "children" array */
  public int getNumChildren ();

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOutput field named "children" */
  public void setChildren (X3DChildNode[] nodes) throws InvalidFieldValueException;

  /** Assign single X3DChildNode value (using a properly typed node) as the MFNode array for inputOutput field named "children" */
  public void setChildren (X3DChildNode node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed protoInstance array) to MFNode inputOutput field named "children" */
  public void setChildren (X3DPrototypeInstance node) throws InvalidFieldValueException;

  /** Assign X3DChildNode array (using a properly typed node array) to MFNode inputOutput field named "children" */
  public void setChildren (X3DNode[] nodes) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.60 X3DVolumeDataNode

/** X3DVolumeDataNode defines an abstract node interface that extends interfaces X3DChildNode and X3DNode. */

public interface X3DVolumeDataNode extends X3DChildNode, X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f inputOutput field named "dimensions" */
  public void getDimensions (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f inputOutput field named "dimensions" */
  public void setDimensions (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.2.61 X3DVolumeRenderStyleNode

/** X3DVolumeRenderStyleNode defines an abstract node interface that extends interface X3DNode. */

public interface X3DVolumeRenderStyleNode extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return boolean result from SFBool inputOutput field named "enabled" */
  public boolean getEnabled ();

  /** Assign boolean value to SFBool inputOutput field named "enabled" */
  public void setEnabled (boolean value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

cubeB.3  Auxiliary node type interfaces

--- X3D separator bar ---

B.3.1 X3DBoundedObject

/** X3DBoundedObject defines an abstract interface.
  * X3DBoundedObject indicates that bounding box values can be provided (or computed) to encompass this node and any children. */

public interface X3DBoundedObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [] from SFVec3f initializeOnly field named "bboxCenter" */
  public void getBboxCenter (float[] result);

  /** Assign 3-tuple float array [] to SFVec3f initializeOnly field named "bboxCenter" */
  public void setBboxCenter (float[] value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array [0,∞) or −1 −1 −1 from boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void getBboxSize (float[] result);

  /** Assign 3-tuple float array [0,∞) or −1 −1 −1 to boundingBoxSizeType type initializeOnly field named "bboxSize" */
  public void setBboxSize (float[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.3.2 X3DFogObject

/** X3DFogObject defines an abstract interface.
  * Abstract type describing a node that influences the lighting equation through the use of fog semantics. */

public interface X3DFogObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of 3-tuple float results array using RGB values [0..1] from SFColor inputOutput field named "color" */
  public void getColor (float[] result);

  /** Assign 3-tuple float array using RGB values [0..1] to SFColor inputOutput field named "color" */
  public void setColor (float[] color) throws InvalidFieldValueException;

  /** Return String enumeration result ("LINEAR"|"EXPONENTIAL") from fogTypeValues type inputOutput field named "fogType" */
  public String getFogType ();

  /** Assign String enumeration value ("LINEAR"|"EXPONENTIAL") to fogTypeValues type inputOutput field named "fogType" */
  public void setFogType (String value) throws InvalidFieldValueException;

  /** Return float result [] from  type inputOutput field named "visibilityRange" */
  public float getVisibilityRange ();

  /** Assign float value [] to  type inputOutput field named "visibilityRange" */
  public void setVisibilityRange (float value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.3.3 X3DMetadataObject

/** X3DMetadataObject defines an abstract interface that extends interface X3DNode.
  * Each node inheriting the X3DMetadataObject interface contains a single array of strictly typed values: MFBool, MFInt32, MFFloat, MFDouble, MFString, or MFNode, the latter having children that are all Metadata nodes. */

public interface X3DMetadataObject extends X3DNode
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return String result [] from SFString inputOutput field named "name" */
  public String getName ();

  /** Assign String value [] to SFString inputOutput field named "name" */
  public void setName (String value);

  /** Return String result [] from SFString inputOutput field named "reference" */
  public String getReference ();

  /** Assign String value [] to SFString inputOutput field named "reference" */
  public void setReference (String value);

  // ===== methods for fields inherited from parent interfaces =====

  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return X3DMetadataObject result (using a properly typed node or X3DPrototypeInstance) from SFNode inputOutput field named "metadata" */
  public void getMetadata (X3DNode result);

  /** Assign X3DMetadataObject value (using a properly typed node) to SFNode inputOutput field named "metadata" */
  public void setMetadata (X3DMetadataObject node) throws InvalidFieldValueException;

  /** Assign X3DMetadataObject value (using a properly typed protoInstance) */
  public void setMetadata (X3DPrototypeInstance protoInstance) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.3.4 X3DPickableObject

/** X3DPickableObject defines an abstract interface. */

public interface X3DPickableObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of String results array ["ALL","NONE","TERRAIN",...] from MFString inputOutput field named "objectType" */
  public String[] getObjectType ();

  /** Return number of primitive values in "objectType" array */
  public int getNumObjectType ();

  /** Assign String array ["ALL","NONE","TERRAIN",...] to MFString inputOutput field named "objectType" */
  public void setObjectType (String[] values);

  /** Assign single String value ["ALL","NONE","TERRAIN",...] as the MFString array for inputOutput field named "objectType" */
  public void setObjectType (String value);

  /** Return boolean result from SFBool inputOutput field named "pickable" */
  public boolean getPickable ();

  /** Assign boolean value to SFBool inputOutput field named "pickable" */
  public void setPickable (boolean value);
}
--- X3D separator bar ---

B.3.5 X3DProgrammableShaderObject

/** X3DProgrammableShaderObject defines an abstract interface. */

public interface X3DProgrammableShaderObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.3.6 X3DUrlObject

/** X3DUrlObject defines an abstract interface.
  * X3DUrlObject indicates that a node has content loaded from a Uniform Resource Locator (URL) and can be tracked via a LoadSensor. */

public interface X3DUrlObject
{
  /** Return xs:NMTOKEN result [] from xs:NMTOKEN type inputOutput field named "componentName" */
  public xs:NMTOKEN getComponentName ();

  /** Assign xs:NMTOKEN value [] to xs:NMTOKEN type inputOutput field named "componentName" */
  public void setComponentName (xs:NMTOKEN value) throws InvalidFieldValueException;

  /** Return xs:positiveInteger result [] from xs:positiveInteger type inputOutput field named "componentLevel" */
  public xs:positiveInteger getComponentLevel ();

  /** Assign xs:positiveInteger value [] to xs:positiveInteger type inputOutput field named "componentLevel" */
  public void setComponentLevel (xs:positiveInteger value) throws InvalidFieldValueException;

  /** Return array of String results array [] from MFString inputOutput field named "url" */
  public String[] getUrl ();

  /** Return number of primitive values in "url" array */
  public int getNumUrl ();

  /** Assign String array [] to MFString inputOutput field named "url" */
  public void setUrl (String[] values);

  /** Assign single String value [] as the MFString array for inputOutput field named "url" */
  public void setUrl (String value);
}
--- X3D separator bar ---

cubeB.4  Field interfaces

--- X3D separator bar ---

B.4.1 X3DFieldTypes

public interface X3DFieldTypes {

    public int INPUT_ONLY = 1;
    public int INITIALIZE_ONLY = 2;
    public int INPUT_OUTPUT = 3;
    public int OUTPUT_ONLY = 4;

    public int SFBOOL = 1;
    public int MFBOOL = 2;
    public int SFCOLOR = 21;
    public int MFCOLOR = 22;
    public int SFCOLORRGBA = 23;
    public int MFCOLORRGBA = 24;
    public int SFDOUBLE = 7;
    public int MFDOUBLE = 8;
    public int SFFLOAT = 5;
    public int MFFLOAT = 6;
    public int SFIMAGE = 25;
    public int MFIMAGE = 26;
    public int SFINT32 = 3;
    public int MFINT32 = 4;
    public int SFNODE = 11;
    public int MFNODE = 12;
    public int SFROTATION = 19;
    public int MFROTATION = 20;
    public int SFSTRING = 27;
    public int MFSTRING = 28;
    public int SFTIME = 9;
    public int MFTIME = 10;
    public int SFVEC2F = 13;
    public int MFVEC2F = 14;
    public int SFVEC3F = 15;
    public int MFVEC3F = 16;
    public int SFVEC3D = 17;
    public int MFVEC3D = 18;
}
--- X3D separator bar ---

B.4.2 X3DFieldEvent

public class X3DFieldEvent extends java.util.EventObject {

    public X3DFieldEvent(Object src, double ts, Object data);

    public double getTime();

    public Object getData();
}
--- X3D separator bar ---

B.4.3 X3DFieldEventListener

public interface X3DFieldEventListener extends java.util.EventListener {
    public void readableFieldChanged(X3DFieldEvent evt);
}
--- X3D separator bar ---

B.4.4 X3DFieldDefinition

public interface X3DFieldDefinition {

    public String getName();

    public int getAccessType();

    public int getFieldType();

    public String getFieldTypeString();
}
--- X3D separator bar ---

B.4.5 X3DField

public interface X3DField {

    public X3DFieldDefinition getDefinition();

    public boolean isReadable();

    public boolean isWritable();

    public void addX3DEventListener(X3DFieldEventListener l);

    public void removeX3DEventListener(X3DFieldEventListener l);

    public void setUserData(Object data);

    public Object getUserData();
}
--- X3D separator bar ---

B.4.6 MField

public interface MField extends X3DField {

    public int size();

    public void clear();

    public void remove(int index);
}
--- X3D separator bar ---

B.4.7 SFBool

/** SFBool defines an abstract node interface.
  * SFBool is a logical type with possible values (true|false) to match the XML boolean type. Hint: X3D SFBool values are lower case (true|false) in order to maintain compatibility with other XML documents. */

public interface SFBool extends X3DField
{

  /** Return boolean result [] from type SFBool */
  public boolean getValue ();

  /** Assign boolean value [] to type SFBool */
  public void setValue (boolean value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.8 MFBool

/** MFBool defines an abstract node interface.
  * MFBool is an array of Boolean values. Type MFBool was previously undefined in the VRML 97 Specification, but nevertheless needed for event utilities and scripting. Example use: MFBool is useful for defining a series of behavior states using a BooleanSequencer prototype. */

public interface MFBool extends MField
{

  /** Return array of boolean results array [] from type MFBool */
  public boolean[] getValue ();

  /** Utility method to return single value from MFBool array */
  public boolean get1Value (int index);

  /** Assign boolean array [] to type MFBool */
  public void setValue (int size, boolean[] values) throws InvalidFieldValueException;

  /** Utility method to set a single value in MFBool array */
  public void set1Value (int index, boolean value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFBool array */
  public void append (boolean value);

  /** Utility method to insert a single value in MFBool array */
  public void insertValue (int index, boolean value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.9 SFColor

/** SFColor defines an abstract node interface.
  * The SFColor field specifies one RGB (red-green-blue) color triple. Each color value is an RGB triple of floating point numbers in the range 0.0 to 1.0. The default value of an uninitialized SFColor field is (0 0 0). */

public interface SFColor extends X3DField
{

  /** Return array of 3-tuple float results array using RGB values [0..1] from type SFColor */
  public void getValue (float[] result);

  /** Assign 3-tuple float array using RGB values [0..1] to type SFColor */
  public void setValue (float[] color) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.10 MFColor

/** MFColor defines an abstract node interface.
  * MFColor specifies zero or more SFColor RGB triples. Each color value is an RGB triple of floating point numbers in the range 0.0 to 1.0. The default value of an uninitialized MFColor field is the empty list. Individual SFColor array values are optionally separated by commas. */

public interface MFColor extends MField
{

  /** Return array of 3-tuple float results array using RGB values [0..1] from type MFColor */
  public void getValue (float[] result);

  /** Return array of 3-tuple float results array using RGB values [0..1] from type MFColor */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single 3-tuple value from MFColor array */
  public void get1Value (int index, float[] result);

  /** Assign 3-tuple float array using RGB values [0..1] to type MFColor */
  public void setValue (int size, float[] colors) throws InvalidFieldValueException;

  /** Assign 3-tuple float array using RGB values [0..1] to type MFColor */
  public void setValue (float[][] colors) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 3-tuple value in MFColor array */
  public void set1Value (int index, float[] color) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 3-tuple value to MFColor array */
  public void append (float[] color);

  /** Utility method to insert a single 3-tuple value in MFColor array */
  public void insertValue (int index, float[] color) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.11 SFColorRGBA

/** SFColorRGBA defines an abstract node interface.
  * The SFColorRGBA field specifies one RGBA (red-green-blue-alpha) color 4-tuple. Each color value is an RGBA 4-tuple of floating point numbers in the range 0.0 to 1.0. Alpha (opacity) values = (1 - transparency). The default value of an uninitialized SFColorRGBA field is (0 0 0 0). */

public interface SFColorRGBA extends X3DField
{

  /** Return array of 4-tuple float results array using RGBA values [0..1] from type SFColorRGBA */
  public void getValue (float[] result);

  /** Assign 4-tuple float array using RGBA values [0..1] to type SFColorRGBA */
  public void setValue (float[] color) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.12 MFColorRGBA

/** MFColorRGBA defines an abstract node interface.
  * MFColorRGBA specifies zero or more SFColorRGBA 4-tuples. Each color value is an RGBA 4-tuple of floating point numbers in the range 0.0 to 1.0. Alpha (opacity) values = (1 - transparency). The default value of an uninitialized MFColor field is the empty list. Individual SFColorRGBA array values are optionally separated by commas. */

public interface MFColorRGBA extends MField
{

  /** Return array of 4-tuple float results array using RGBA values [0..1] from type MFColorRGBA */
  public void getValue (float[] result);

  /** Return array of 4-tuple float results array using RGBA values [0..1] from type MFColorRGBA */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single 4-tuple value from MFColorRGBA array */
  public void get1Value (int index, float[] result);

  /** Assign 4-tuple float array using RGBA values [0..1] to type MFColorRGBA */
  public void setValue (int size, float[] colors) throws InvalidFieldValueException;

  /** Assign 4-tuple float array using RGBA values [0..1] to type MFColorRGBA */
  public void setValue (float[][] colors) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 4-tuple value in MFColorRGBA array */
  public void set1Value (int index, float[] color) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 4-tuple value to MFColorRGBA array */
  public void append (float[] color);

  /** Utility method to insert a single 4-tuple value in MFColorRGBA array */
  public void insertValue (int index, float[] color) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.13 SFDouble

/** SFDouble defines an abstract node interface.
  * SFDouble is a double-precision floating-point type. Array values are optionally separated by commas. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision for rationale. */

public interface SFDouble extends X3DField
{

  /** Return double result [] from type SFDouble */
  public double getValue ();

  /** Assign double value [] to type SFDouble */
  public void setValue (double value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.14 MFDouble

/** MFDouble defines an abstract node interface.
  * MFDouble is an array of Double values, i.e. a double-precision floating-point array type. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision for rationale. SFDouble/MFDouble are analagous to SFDouble/MFDouble. Array values are optionally separated by commas. */

public interface MFDouble extends MField
{

  /** Return array of double results array [] from type MFDouble */
  public double[] getValue ();

  /** Utility method to return single value from MFDouble array */
  public double get1Value (int index);

  /** Assign double array [] to type MFDouble */
  public void setValue (int size, double[] values) throws InvalidFieldValueException;

  /** Utility method to set a single value in MFDouble array */
  public void set1Value (int index, double value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFDouble array */
  public void append (double value);

  /** Utility method to insert a single value in MFDouble array */
  public void insertValue (int index, double value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.15 SFFloat

/** SFFloat defines an abstract node interface.
  * SFFloat is a single-precision floating-point type. */

public interface SFFloat extends X3DField
{

  /** Return float result [] from type SFFloat */
  public float getValue ();

  /** Assign float value [] to type SFFloat */
  public void setValue (float value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.16 MFFloat

/** MFFloat defines an abstract node interface.
  * MFFloat is an array of SFFloat values, i.e. a single-precision floating-point array type. Array values are optionally separated by commas. */

public interface MFFloat extends MField
{

  /** Return array of float results array [] from type MFFloat */
  public float[] getValue ();

  /** Utility method to return single value from MFFloat array */
  public float get1Value (int index);

  /** Assign float array [] to type MFFloat */
  public void setValue (int size, float[] values) throws InvalidFieldValueException;

  /** Utility method to set a single value in MFFloat array */
  public void set1Value (int index, float value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFFloat array */
  public void append (float value);

  /** Utility method to insert a single value in MFFloat array */
  public void insertValue (int index, float value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.17 SFImage

/** SFImage defines an abstract node interface.
  * The SFImage field specifies a single uncompressed 2-dimensional pixel image. SFImage fields contain three integers representing the width, height and number of components in the image, followed by (width x height) hexadecimal or integer values representing the pixels in the image. */

public interface SFImage extends X3DField
{

    /** Get image width in pixels */
    public int getWidth ();

    /** Get image height in pixels */
    public int getHeight ();

    /** Get number of components in an image:
      * 1 (intensity), 2 (intensity alpha), 3 (red green blue), 4 (red green blue alpha-opacity).*/
    public int getComponents();

    /** Get array of pixel values [0-255] */
    public void getPixels (int[] pixels);

    /** Get java.awt.image.WritableRenderedImage version of image */
    public  java.awt.image.WritableRenderedImage getImage();

    /** Initialize image */
    public void setValue (int width,
                          int height,
                          int components,
                          int[] pixels);

    /** Assign a new image as current image */
    public void setImage (java.awt.image.RenderedImage image);

    /** Assign a portion of a new image as part of current image */
    public void setSubImage (java.awt.image.RenderedImage image,
                             int srcWidth,
                             int srcHeight,
                             int srcXOffset,
                             int srcYOffset,
                             int destXOffset,
                             int destYOffset);
}
--- X3D separator bar ---

B.4.18 MFImage

/** MFImage defines an abstract node interface.
  * MFImage is an array of SFImage values. */

public interface MFImage extends MField
{

    /** Get selected image width in pixels */
    public int getWidth (int imageIndex) throws ArrayIndexOutOfBoundsException;

    /** Get selected image height in pixels */
    public int getHeight (int imageIndex) throws ArrayIndexOutOfBoundsException;

    /** Get number of components in selected image:
      * 1 (intensity), 2 (intensity alpha), 3 (red green blue), 4 (red green blue alpha-opacity).*/
    public int getComponents (int imageIndex) throws ArrayIndexOutOfBoundsException;

    /** Get array of pixel values [0-255] in selected image */
    public void getPixels (int imageIndex, int[] pixels) throws ArrayIndexOutOfBoundsException;

    /** Get <a href="http://docs.oracle.com/javase/8/docs/api/java/awt/image/WritableRenderedImage.html">java.awt.image.WritableRenderedImage</a> version of selected image */
    public WritableRenderedImage getImage(int imageIndex) throws ArrayIndexOutOfBoundsException;

    /** Assign a new image as a replacement image within the current image array */
    public void setImage (int imageIndex, RenderedImage img) throws ArrayIndexOutOfBoundsException;

    /** Assign a portion of a new image as part of current selected image in array */
    public void setSubImage (int imageIndex,
                             RenderedImage img,
                             int srcWidth,
                             int srcHeight,
                             int srcXOffset,
                             int srcYOffset,
                             int destXOffset,
                             int destYOffset) throws ArrayIndexOutOfBoundsException;

    /** Utility method to set all values for selected image in array */
    public void set1Value (int imageIndex, int value) throws ArrayIndexOutOfBoundsException;

    /** Initialize selected image */
    public void set1Value (int imageIndex,
                           int width,
                           int height,
                           int components,
                           int[] pixels) throws ArrayIndexOutOfBoundsException;

    /** Utility method to set all values for all images in array */
    public void setValue (int[] value);

    /** Assign a new image array as current image array */
    public void setImage (RenderedImage[] img);

    /** Append a new image to current image array */
    public void append (RenderedImage value);

    /** Insert a new image in the current image array */
    public void insertValue (int imageIndex, RenderedImage value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.19 SFInt32

/** SFInt32 defines an abstract node interface.
  * An SFInt32 field specifies one 32-bit signed integer. */

public interface SFInt32 extends X3DField
{

  /** Return int result [] from type SFInt32 */
  public int getValue ();

  /** Assign int value [] to type SFInt32 */
  public void setValue (int value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.20 MFInt32

/** MFInt32 defines an abstract node interface.
  * An MFInt32 field defines an array of 32-bit signed integers. Array values are optionally separated by commas. */

public interface MFInt32 extends MField
{

  /** Return MFInt32 result [] from type MFInt32 */
  public MFInt32 getValue ();

  /** Utility method to return single value from MFInt32 array */
  public int get1Value (int index);

  /** Assign MFInt32 value [] to type MFInt32 */
  public void setValue (int size, MFInt32 values) throws InvalidFieldValueException;

  /** Utility method to set a single value in MFInt32 array */
  public void set1Value (int index, int value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFInt32 array */
  public void append (int value);

  /** Utility method to insert a single value in MFInt32 array */
  public void insertValue (int index, int value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.21 SFRotation

/** SFRotation defines an abstract node interface.
  * SFRotation is an axis-angle 4-tuple, indicating X-Y-Z direction plus angle orientation about that axis. The first three values specify a normalized rotation axis vector about which the rotation takes place. (Thus the first three values shall be within the range [-1..+1] in order to represent a normalized unit vector. Problem: scientific notation allows leading digit.) The fourth value specifies the amount of right-handed rotation about that axis in radians. */

public interface SFRotation extends X3DField
{

  /** Return array of 4-tuple float results array in radians from type SFRotation */
  public float[] getValue ();

  /** Assign 4-tuple float array in radians to type SFRotation */
  public void setValue (float[] angle) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.22 MFRotation

/** MFRotation defines an abstract node interface.
  * MFRotation is an array of SFRotation values. Individual SFRotation array values are optionally separated by commas. */

public interface MFRotation extends MField
{

  /** Return array of 4-tuple float results array in radians from type MFRotation */
  public float[] getValue ();

  /** Return array of 4-tuple float results array in radians from type MFRotation */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single 4-tuple value from MFRotation array */
  public float[] get1Value (int index);

  /** Assign 4-tuple float array in radians to type MFRotation */
  public void setValue (int size, float[] angles) throws InvalidFieldValueException;

  /** Assign 4-tuple float array in radians to type MFRotation */
  public void setValue (float[][] angles) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 4-tuple value in MFRotation array */
  public void set1Value (int index, float[] angle) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 4-tuple value to MFRotation array */
  public void append (float[] angle);

  /** Utility method to insert a single 4-tuple value in MFRotation array */
  public void insertValue (int index, float[] angle) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.23 SFString

/** SFString defines an abstract node interface.
  * SFString defines a single string encoded with the UTF-8 universal character set. */

public interface SFString extends X3DField
{

  /** Return String result [] from type SFString */
  public String getValue ();

  /** Assign String value [] to type SFString */
  public void setValue (String value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.24 MFString

/** MFString defines an abstract node interface.
  * MFString is an array of SFString values, each "quoted" and separated by whitespace. Individual SFString array values are optionally separated by commas. */

public interface MFString extends MField
{

  /** Return array of String results array [] from type MFString */
  public String[] getValue ();

  /** Utility method to return single value from MFString array */
  public String get1Value (int index);

  /** Assign String array [] to type MFString */
  public void setValue (int size, String[] values) throws InvalidFieldValueException;

  /** Utility method to set a single value in MFString array */
  public void set1Value (int index, String value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFString array */
  public void append (String value);

  /** Utility method to insert a single value in MFString array */
  public void insertValue (int index, String value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.25 SFTime

/** SFTime defines an abstract node interface.
  * The SFTime field specifies a single time value. Time values are specified as a double-precision floating point number. Typically, SFTime fields represent the number of seconds since Jan 1, 1970, 00:00:00 GMT. */

public interface SFTime extends X3DField
{

  /** Return double result in seconds from type SFTime */
  public double getValue ();

  /** Return long value in nanoseconds from type SFTime */
  public long getJavaValue ();

  /** Assign double value in seconds to type SFTime */
  public void setValue (double timestamp) throws InvalidFieldValueException;

  /** Assign long value in nanoseconds using System.nanoTime() to type SFTime */
  public void setValue (long value);
}
--- X3D separator bar ---

B.4.26 MFTime

/** MFTime defines an abstract node interface.
  * MFTime is an array of SFTime values. Array values are optionally separated by commas. */

public interface MFTime extends MField
{

  /** Return array of double results array in seconds from type MFTime */
  public double[] getValue ();

  /** Utility method to return single value from MFTime array */
  public double get1Value (int index);

  /** Utility method to return single long value in nanoseconds from MFTime array */
  public long get1JavaValue (int index);

  /** Assign double array in seconds to type MFTime */
  public void setValue (int size, double[] timestamps) throws InvalidFieldValueException;

  /** Assign long array in nanoseconds to type MFTime */
  public void setValue (int size, long[] values);

  /** Utility method to set a single value in MFTime array */
  public void set1Value (int index, double timestamp) throws ArrayIndexOutOfBoundsException;

  /** Utility method to set a single long value in nanoseconds using System.nanoTime() in MFTime array */
  public void set1Value (int index, long value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFTime array */
  public void append (double timestamp);

  /** Utility method to insert a single value in MFTime array */
  public void insertValue (int index, double timestamp) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.27 SFVec2f

/** SFVec2f defines an abstract node interface.
  * SFVec2f is a 2-tuple pair of SFFloat values. Hint: SFVec2f can be used to specify a 2D single-precision coordinate. */

public interface SFVec2f extends X3DField
{

  /** Return array of 2-tuple float results array [] from type SFVec2f */
  public void getValue (float[] result);

  /** Assign 2-tuple float array [] to type SFVec2f */
  public void setValue (float[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.28 MFVec2f

/** MFVec2f defines an abstract node interface.
  * MFVec2f is an array of SFVec2f values. Individual SFVec2f array values are optionally separated by commas. */

public interface MFVec2f extends MField
{

  /** Return array of 2-tuple float results array [] from type MFVec2f */
  public void getValue (float[] result);

  /** Return array of 2-tuple float results array [] from type MFVec2f */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single 2-tuple value from MFVec2f array */
  public void get1Value (int index, float[] result);

  /** Assign 2-tuple float array [] to type MFVec2f */
  public void setValue (int size, float[] values) throws InvalidFieldValueException;

  /** Assign 2-tuple float array [] to type MFVec2f */
  public void setValue (float[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 2-tuple value in MFVec2f array */
  public void set1Value (int index, float[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 2-tuple value to MFVec2f array */
  public void append (float[] value);

  /** Utility method to insert a single 2-tuple value in MFVec2f array */
  public void insertValue (int index, float[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.29 SFVec2d

/** SFVec2d defines an abstract node interface.
  * SFVec2d is a 2-tuple pair of SFDouble values. Hint: SFVec2d can be used to specify a 2D double-precision coordinate. */

public interface SFVec2d extends X3DField
{

  /** Return array of 2-tuple double results array [] from type SFVec2d */
  public void getValue (double[] result);

  /** Assign 2-tuple double array [] to type SFVec2d */
  public void setValue (double[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.30 MFVec2d

/** MFVec2d defines an abstract node interface.
  * MFVec2d is an array of SFVec2d values. Individual SFVec2d array values are optionally separated by commas. */

public interface MFVec2d extends MField
{

  /** Return array of 2-tuple double results array [] from type MFVec2d */
  public void getValue (double[] result);

  /** Return array of 2-tuple double results array [] from type MFVec2d */
  public void getValue (double[][] result); // overloaded method for convenience

  /** Utility method to return single 2-tuple value from MFVec2d array */
  public void get1Value (int index, double[] result);

  /** Assign 2-tuple double array [] to type MFVec2d */
  public void setValue (int size, double[] values) throws InvalidFieldValueException;

  /** Assign 2-tuple double array [] to type MFVec2d */
  public void setValue (double[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 2-tuple value in MFVec2d array */
  public void set1Value (int index, double[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 2-tuple value to MFVec2d array */
  public void append (double[] value);

  /** Utility method to insert a single 2-tuple value in MFVec2d array */
  public void insertValue (int index, double[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.31 SFVec3f

/** SFVec3f defines an abstract node interface.
  * SFVec3f is a 3-tuple triplet of SFFloat values. Hint: SFVec3f can be used to specify a 3D coordinate or a 3D scale value. */

public interface SFVec3f extends X3DField
{

  /** Return array of 3-tuple float results array [] from type SFVec3f */
  public void getValue (float[] result);

  /** Assign 3-tuple float array [] to type SFVec3f */
  public void setValue (float[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.32 MFVec3f

/** MFVec3f defines an abstract node interface.
  * MFVec3f is an array of SFVec3f values. Individual SFVec3f array values are optionally separated by commas. */

public interface MFVec3f extends MField
{

  /** Return array of 3-tuple float results array [] from type MFVec3f */
  public void getValue (float[] result);

  /** Return array of 3-tuple float results array [] from type MFVec3f */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single 3-tuple value from MFVec3f array */
  public void get1Value (int index, float[] result);

  /** Assign 3-tuple float array [] to type MFVec3f */
  public void setValue (int size, float[] values) throws InvalidFieldValueException;

  /** Assign 3-tuple float array [] to type MFVec3f */
  public void setValue (float[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 3-tuple value in MFVec3f array */
  public void set1Value (int index, float[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 3-tuple value to MFVec3f array */
  public void append (float[] value);

  /** Utility method to insert a single 3-tuple value in MFVec3f array */
  public void insertValue (int index, float[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.33 SFVec3d

/** SFVec3d defines an abstract node interface.
  * SFVec3d is a 3-tuple triplet of SFDouble values. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision. Hint: SFVec3d can be used to specify a georeferenced 3D coordinate. */

public interface SFVec3d extends X3DField
{

  /** Return array of 3-tuple double results array [] from type SFVec3d */
  public void getValue (double[] result);

  /** Assign 3-tuple double array [] to type SFVec3d */
  public void setValue (double[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.34 MFVec3d

/** MFVec3d defines an abstract node interface.
  * MFVec3d is an array of SFVec3d values. Individual SFVec3d array values are optionally separated by commas. Original rationale for inclusion: GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision. Hint: MFVec3d can be used to specify a list of georeferenced 3D coordinates. */

public interface MFVec3d extends MField
{

  /** Return array of 3-tuple double results array [] from type MFVec3d */
  public void getValue (double[] result);

  /** Return array of 3-tuple double results array [] from type MFVec3d */
  public void getValue (double[][] result); // overloaded method for convenience

  /** Utility method to return single 3-tuple value from MFVec3d array */
  public void get1Value (int index, double[] result);

  /** Assign 3-tuple double array [] to type MFVec3d */
  public void setValue (int size, double[] values) throws InvalidFieldValueException;

  /** Assign 3-tuple double array [] to type MFVec3d */
  public void setValue (double[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 3-tuple value in MFVec3d array */
  public void set1Value (int index, double[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 3-tuple value to MFVec3d array */
  public void append (double[] value);

  /** Utility method to insert a single 3-tuple value in MFVec3d array */
  public void insertValue (int index, double[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.35 SFVec4f

/** SFVec4f defines an abstract node interface.
  * SFVec4f is a 4-tuple set of single-precision floating-point values, specifying a 3D homogeneous vector. */

public interface SFVec4f extends X3DField
{

  /** Return array of 4-tuple float results array [] from type SFVec4f */
  public void getValue (float[] result);

  /** Assign 4-tuple float array [] to type SFVec4f */
  public void setValue (float[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.36 MFVec4f

/** MFVec4f defines an abstract node interface.
  * MFVec4f is zero or more SFVec4f values. Individual SFVec4f array values are optionally separated by commas. */

public interface MFVec4f extends MField
{

  /** Return array of 4-tuple float results array [] from type MFVec4f */
  public void getValue (float[] result);

  /** Return array of 4-tuple float results array [] from type MFVec4f */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single 4-tuple value from MFVec4f array */
  public void get1Value (int index, float[] result);

  /** Assign 4-tuple float array [] to type MFVec4f */
  public void setValue (int size, float[] values) throws InvalidFieldValueException;

  /** Assign 4-tuple float array [] to type MFVec4f */
  public void setValue (float[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 4-tuple value in MFVec4f array */
  public void set1Value (int index, float[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 4-tuple value to MFVec4f array */
  public void append (float[] value);

  /** Utility method to insert a single 4-tuple value in MFVec4f array */
  public void insertValue (int index, float[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.37 SFVec4d

/** SFVec4d defines an abstract node interface.
  * SFVec4d is a 4-tuple set of double-precision floating-point values, specifying a 3D homogeneous vector. */

public interface SFVec4d extends X3DField
{

  /** Return array of 4-tuple double results array [] from type SFVec4d */
  public void getValue (double[] result);

  /** Assign 4-tuple double array [] to type SFVec4d */
  public void setValue (double[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.38 MFVec4d

/** MFVec4d defines an abstract node interface.
  * MFVec4d is zero or more SFVec4d values. Individual SFVec4d array values are optionally separated by commas. */

public interface MFVec4d extends MField
{

  /** Return array of 4-tuple double results array [] from type MFVec4d */
  public void getValue (double[] result);

  /** Return array of 4-tuple double results array [] from type MFVec4d */
  public void getValue (double[][] result); // overloaded method for convenience

  /** Utility method to return single 4-tuple value from MFVec4d array */
  public void get1Value (int index, double[] result);

  /** Assign 4-tuple double array [] to type MFVec4d */
  public void setValue (int size, double[] values) throws InvalidFieldValueException;

  /** Assign 4-tuple double array [] to type MFVec4d */
  public void setValue (double[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single 4-tuple value in MFVec4d array */
  public void set1Value (int index, double[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single 4-tuple value to MFVec4d array */
  public void append (double[] value);

  /** Utility method to insert a single 4-tuple value in MFVec4d array */
  public void insertValue (int index, double[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.39 SFMatrix3f

/** SFMatrix3f defines an abstract node interface.
  * SFMatrix3f specifies a 3x3 matrix of single-precision floating point numbers, organized in row-major fashion. */

public interface SFMatrix3f extends X3DField
{

  /** Return array of float results array [] from type SFMatrix3f */
  public float[] getValue ();

  /** Assign float array [] to type SFMatrix3f */
  public void setValue (float[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.40 MFMatrix3f

/** MFMatrix3f defines an abstract node interface.
  * MFMatrix3f specifies zero or more 3x3 matrices of single-precision floating point numbers, organized in row-major fashion. */

public interface MFMatrix3f extends MField
{

  /** Return array of float results array [] from type MFMatrix3f */
  public float[] getValue ();

  /** Return array of float results array [] from type MFMatrix3f */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single value from MFMatrix3f array */
  public float[] get1Value (int index);

  /** Assign float array [] to type MFMatrix3f */
  public void setValue (int size, float[] values) throws InvalidFieldValueException;

  /** Assign float array [] to type MFMatrix3f */
  public void setValue (float[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single value in MFMatrix3f array */
  public void set1Value (int index, float[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFMatrix3f array */
  public void append (float[] value);

  /** Utility method to insert a single value in MFMatrix3f array */
  public void insertValue (int index, float[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.41 SFMatrix3d

/** SFMatrix3d defines an abstract node interface.
  * SFMatrix3d specifies a 3x3 matrix of double-precision floating point numbers, organized in row-major fashion. */

public interface SFMatrix3d extends X3DField
{

  /** Return array of double results array [] from type SFMatrix3d */
  public double[] getValue ();

  /** Assign double array [] to type SFMatrix3d */
  public void setValue (double[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.42 MFMatrix3d

/** MFMatrix3d defines an abstract node interface.
  * MFMatrix3d specifies zero or more 3x3 matrices of double-precision floating point numbers, organized in row-major fashion. */

public interface MFMatrix3d extends MField
{

  /** Return array of double results array [] from type MFMatrix3d */
  public double[] getValue ();

  /** Return array of double results array [] from type MFMatrix3d */
  public void getValue (double[][] result); // overloaded method for convenience

  /** Utility method to return single value from MFMatrix3d array */
  public double[] get1Value (int index);

  /** Assign double array [] to type MFMatrix3d */
  public void setValue (int size, double[] values) throws InvalidFieldValueException;

  /** Assign double array [] to type MFMatrix3d */
  public void setValue (double[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single value in MFMatrix3d array */
  public void set1Value (int index, double[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFMatrix3d array */
  public void append (double[] value);

  /** Utility method to insert a single value in MFMatrix3d array */
  public void insertValue (int index, double[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.43 SFMatrix4f

/** SFMatrix4f defines an abstract node interface.
  * SFMatrix4f specifies a 4x4 matrix of single-precision floating point numbers, organized in row-major fashion. */

public interface SFMatrix4f extends X3DField
{

  /** Return array of float results array [] from type SFMatrix4f */
  public float[] getValue ();

  /** Assign float array [] to type SFMatrix4f */
  public void setValue (float[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.44 MFMatrix4f

/** MFMatrix4f defines an abstract node interface.
  * MFMatrix4f specifies zero or more 4x4 matrices of single-precision floating point numbers, organized in row-major fashion. */

public interface MFMatrix4f extends MField
{

  /** Return array of float results array [] from type MFMatrix4f */
  public float[] getValue ();

  /** Return array of float results array [] from type MFMatrix4f */
  public void getValue (float[][] result); // overloaded method for convenience

  /** Utility method to return single value from MFMatrix4f array */
  public float[] get1Value (int index);

  /** Assign float array [] to type MFMatrix4f */
  public void setValue (int size, float[] values) throws InvalidFieldValueException;

  /** Assign float array [] to type MFMatrix4f */
  public void setValue (float[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single value in MFMatrix4f array */
  public void set1Value (int index, float[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFMatrix4f array */
  public void append (float[] value);

  /** Utility method to insert a single value in MFMatrix4f array */
  public void insertValue (int index, float[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

B.4.45 SFMatrix4d

/** SFMatrix4d defines an abstract node interface.
  * SFMatrix4d specifies a 4x4 matrix of double-precision floating point numbers, organized in row-major fashion. */

public interface SFMatrix4d extends X3DField
{

  /** Return array of double results array [] from type SFMatrix4d */
  public double[] getValue ();

  /** Assign double array [] to type SFMatrix4d */
  public void setValue (double[] value) throws InvalidFieldValueException;
}
--- X3D separator bar ---

B.4.46 MFMatrix4d

/** MFMatrix4d defines an abstract node interface.
  * MFMatrix4d specifies zero or more 4x4 matrices of double-precision floating point numbers, organized in row-major fashion. */

public interface MFMatrix4d extends MField
{

  /** Return array of double results array [] from type MFMatrix4d */
  public double[] getValue ();

  /** Return array of double results array [] from type MFMatrix4d */
  public void getValue (double[][] result); // overloaded method for convenience

  /** Utility method to return single value from MFMatrix4d array */
  public double[] get1Value (int index);

  /** Assign double array [] to type MFMatrix4d */
  public void setValue (int size, double[] values) throws InvalidFieldValueException;

  /** Assign double array [] to type MFMatrix4d */
  public void setValue (double[][] values) throws InvalidFieldValueException; // overloaded method for convenience

  /** Utility method to set a single value in MFMatrix4d array */
  public void set1Value (int index, double[] value) throws ArrayIndexOutOfBoundsException;

  /** Utility method to append a single value to MFMatrix4d array */
  public void append (double[] value);

  /** Utility method to insert a single value in MFMatrix4d array */
  public void insertValue (int index, double[] value) throws ArrayIndexOutOfBoundsException;
}
--- X3D separator bar ---

cubeB.5  Service interfaces

B.5.1 BrowserEvent

public class BrowserEvent extends EventObject
{
    public static final int INITIALIZED = 0;
    public static final int SHUTDOWN = 1;
    public static final int URL_ERROR = 2;
    public static final int CONNECTION_ERROR = 10;
    public static final int LAST_IDENTIFIER = 100;

    public BrowserEvent(Object browser, int action);
    public int getID();
}

B.5.2 BrowserFactory

public class BrowserFactory
{
    private BrowserFactory();

    public static void setBrowserFactoryImpl(
        BrowserFactoryImpl fac)
        throws IllegalArgumentException,
               X3DException,
               SecurityException;

    public static X3DComponent createX3DComponent(Map params)
        throws NotSupportedException;

    public static ExternalBrowser getBrowser(Applet applet)
        throws NotSupportedException,
               NoSuchBrowserException,
               ConnectionException;

    public static ExternalBrowser getBrowser(Applet applet,
                                             String frameName,
                                             int index)
        throws NotSupportedException,
               NoSuchBrowserException,
               ConnectionException;

    public static ExternalBrowser getBrowser(InetAddress address, int port)
        throws NotSupportedException,
               NoSuchBrowserException,
               UnknownHostException,
               ConnectionException;
}

B.5.3 X3DFieldEvent

public class X3DFieldEvent extends EventObject
{
    public X3DFieldEvent(Object src, double ts, Object data);
    public double getTime();
    public Object getData();
}

B.5.4 Matrix3

public class Matrix3
{
	public Matrix3();
	public void setIdentity();
    public void set(int row, int column)
    public float get(int row, int column)
    public void setTransform(SFVec2f translation,
                             SFVec3f rotation,
                             SFVec2f scale,
                             SFVec3f scaleOrientation,
                             SFVec2f center)
    public void getTransform(SFVec2f translation,
                             SFVec3f rotation,
                             SFVec2f scale)
    public Matrix3 inverse()
    public Matrix3 transpose()
    public Matrix3 multiplyLeft(Matrix3 mat)
    public Matrix3 multiplyRight(Matrix3 mat)
    public Matrix3 multiplyRowVector(SFVec3f vec)
    public Matrix3 multiplyColVector(SFVec3f vec)
}

B.5.5 Matrix4

public class Matrix4
{
	public Matrix4();
	public void setIdentity();
    public void set(int row, int column)
    public float get(int row, int column)
    public void setTransform(SFVec3f translation,
                             SFRotation rotation,
                             SFVec3f scale,
                             SFRotation scaleOrientation,
                             SFVec3f center)
    public void getTransform(SFVec3f translation,
                             SFRotation rotation,
                             SFVec3f scale)
    public Matrix3 inverse()
    public Matrix3 transpose()
    public Matrix3 multiplyLeft(Matrix4 mat)
    public Matrix3 multiplyRight(Matrix4 mat)
    public Matrix3 multiplyRowVector(SFVec3f vec)
    public Matrix3 multiplyColVector(SFVec3f vec)
}
--- X3D separator bar ---

cubeB.6  Statement interfaces

B.6.1 ComponentInfo

public interface ComponentInfo
{
    public String getName();
    public int getLevel();
    public String getTitle();
    public String getProviderURL();
    public String toX3DString();
}

B.6.2 ProfileInfo

public interface ProfileInfo
{
    public String getName();
    public String getTitle();
    public ComponentInfo[] getComponents();
    public String toX3DString();
}
--- X3D separator bar ---

cubeB.7  Exception definitions

B.7.1 X3DException

public class X3DException extends RuntimeException
{
	public X3DException();
	public X3DException(String);
}

B.7.2 BrowserNotSharedException

public class BrowserNotSharedException extends X3DException
{
	public BrowserNotSharedException();
	public BrowserNotSharedException(String);
}

B.7.3 ConnectionException

public class ConnectionException extends X3DException
{
	public ConnectionException();
	public ConnectionException(String);
}

B.7.4 ImportedNodeException

public class ImportedNodeException extends X3DException
{
	public ImportedNodeException();
	public ImportedNodeException(String);
}

B.7.5 InsufficientCapabilitiesException

public class InsufficientCapabilitiesException extends X3DException
{
	public InsufficientCapabilitiesException();
	public InsufficientCapabilitiesException(String);
}

B.7.6 InvalidBrowserException

public class InvalidBrowserException extends X3DException
{
	public InvalidBrowserException();
	public InvalidBrowserException(String);
}

B.7.7 InvalidDocumentException

public class InvalidDocumentException extends X3DException
{
	public InvalidDocumentException();
	public InvalidDocumentException(String);
}

B.7.8 InvalidExecutionContextException

public class InvalidExecutionContextException extends X3DException
{
	public InvalidExecutionContextException();
	public InvalidExecutionContextException(String);
}

B.7.9 InvalidFieldException

public class InvalidFieldException extends X3DException
{
	public InvalidFieldException();
	public InvalidFieldException(String);
}

B.7.10 InvalidFieldValueException

public class InvalidFieldValueException extends X3DException
{
	public InvalidFieldValueException();
	public InvalidFieldValueException(String);
}

B.7.11 InvalidNodeException

public class InvalidNodeException extends X3DException
{
	public InvalidNodeException();
	public InvalidNodeException(String);
}

B.7.12 InvalidOperationTimingException

public class InvalidOperationTimingException extends X3DException
{
	public InvalidOperationTimingException();
	public InvalidOperationTimingException(String);
}

B.7.13 InvalidProtoException

public class InvalidProtoException extends X3DException
{
	public InvalidProtoException();
	public InvalidProtoException(String);
}

B.7.14 InvalidRouteException

public class InvalidRouteException extends X3DException
{
	public InvalidRouteException();
	public InvalidRouteException(String);
}

B.7.15 InvalidURLException

public class InvalidURLException extends X3DException
{
	public InvalidURLException();
	public InvalidURLException(String);
}

B.7.16 InvalidX3DException

public class InvalidX3DException extends X3DException
{
	public InvalidX3DException();
	public InvalidX3DException(String);
}

B.7.17 NodeInUseException

public class NodeInUseException extends X3DException
{
	public NodeInUseException();
	public NodeInUseException(String);
}

B.7.18 NodeUnavailableException

public class NodeUnavailableException extends X3DException
{
	public NodeUnavailableException();
	public NodeUnavailableException(String);
}

B.7.19 NoSuchBrowserException

public class NoSuchBrowserException extends X3DException
{
	public NoSuchBrowserException();
	public NoSuchBrowserException(String);
}

B.7.20 NotSupportedException

public class NotSupportedException extends X3DException
{
	public NotSupportedException();
	public NotSupportedException(String);
}

B.7.21 URLUnavailableException

public class URLUnavailableException extends X3DException
{
	public URLUnavailableException();
	public URLUnavailableException(String);
}
--- X3D separator bar ---

TODO

NOTE 1. Revisions to this document are autogenerated based on X3D Schema updates.

NOTE 2. This TODO section needs to be removed when the actual specification document is submitted to ISO for review.

TODO. Continue node signature verification and best-practice design patterns.

DONE. Sections for Annex B.1 B.2 B.3 and B.4 are being generated. Need to be re-verified to ensure that no side effects have crept in during incremental development.

DONE. Original code sections for Annex B.4.1 through B.4.6 needs to be inserted.

DONE. Original prose sections for Annex B.5 B.6 and B.7 has been inserted.

URLs.
Autogenerated version online at http://www.web3d.org/specifications/JavaLanguageBinding/Part2/abstracts.html
ISO-approved version online at http://www.web3d.org/documents/specifications/19777-2/V3.3/Part2/abstracts.html