Fields are placed inside node statements in a VRML file, and define
the persistent state of the virtual world. Results are undefined if
multiple values for the same field in the same node (e.g., Sphere { radius 1.0 radius 2.0 }
)
are declared. Each node interprets the values in its fields according
to its implementation.
EventIns and eventOuts define the types and names of events that each
type of node may receive or generate. Events are transient and event
values are not written to VRML files. Each node interprets the values
of the events sent to it or generated by it according to its implementation.
Field, eventIn, and eventOut types, and field file format syntax,
are described in "Chapter 4. Field and Event Reference."
An exposedField is a combination of field, eventIn, and eventOut.
If the exposedField's name is zzz, it is a combination of a field
named zzz, an eventIn named set_zzz, and an eventOut named
zzz_changed.
The rules for naming fields, exposedFields, eventOuts, and eventIns
for the built-in nodes are as follows:
- All names containing multiple words start with a lower case letter,
and the first letter of all subsequent words is capitalized (e.g., addChildren),
with the exception of set_ and _changed, as described
below.
- All eventIns have the prefix "set_", with the exception
of the addChildren and removeChildren eventIns.
- Certain eventIns and eventOuts of type SFTime do not use the "set_"
prefix or "_changed" suffix.
- All other eventOuts have the suffix "_changed"
appended, with the exception of eventOuts of type SFBool. Boolean
eventOuts begin with the word "is" (e.g., isFoo)
for better readability.