Extensible 3D (X3D) encodings
Part 3: Compressed binary encoding

Annex A

(normative)

Fast Infoset tables

--- X3D separator bar ---

cube A.1 Introduction and topics

A.1.1 Introduction

This annex specifies the initial table values for each syntactic element in this part of ISO/IEC 19776.

A.1.2 Topics

Table A.1 lists the topics in this annex:

Table A.1 — Topics in this annex

A.1 Introduction and topics
  A.1.1 Introduction
  A.1.2 Topics

A.2 Description
  A.2.1 Overview
  A.2.2 Element name table
  A.2.3 Attribute name table
  A.2.4 Attribute value table
  A.2.5 Encoding algorithm table

A.2 Description

A.2.1 Overview

ISO/IEC 24824-1 allows the predeclaration of a vocabulary for Element and Attributes names. It also allows string tables to have predefined entries. This annex specifies the initial values for all tables needed to encode an X3D document. The X3D-specific external Fast Infoset vocabulary may be identified by:

urn:web3d:x3d:fi-vocabulary-3.2

A.2.2 Element name table

The element name table as defined in FI 8.5 uses the values specified in Table A.2. The optional value prefix and namespace attributes are blank.

Table A.2 — Element name table initial values

NodeID
Shape1
Appearance2
Material3
IndexedFaceSet4
ProtoInstance5
Transform6
ImageTexture7
TextureTransform8
Coordinate
Normal10
Color11
ColorRGBA12
TextureCoordinate13
ROUTE14
fieldValue15
Group16
LOD17
Switch18
Script19
IndexedTriangleFanSet20
IndexedTriangleSet21
IndexedTriangleStripSet22
MultiTexture23
MultiTextureCoordinate24
MultiTextureTransform25
IndexedLineSet26
PointSet27
StaticGroup28
Sphere29
Box30
Cone31
Anchor32
Arc2D33
ArcClose2D34
AudioClip35
Background36
Billboard37
BooleanFilter38
BooleanSequencer39
BooleanToggle40
BooleanTrigger41
Circle2D42
Collision43
ColorInterpolator44
Contour2D45
ContourPolyline2D46
CoordinateDouble47
CoordinateInterpolator48
CoordinateInterpolator2D49
Cylinder50
CylinderSensor51
DirectionalLight52
Disk2D53
EXPORT54
ElevationGrid55
EspduTransform56
ExternProtoDeclare57
Extrusion58
FillProperties59
Fog60
FontStyle61
GeoCoordinate62
GeoElevationGrid63
GeoLOD64
GeoLocation65
GeoMetadata66
GeoOrigin67
GeoPositionInterpolator68
GeoTouchSensor69
GeoViewpoint70
HAnimDisplacer71
HAnimHumanoid72
HAnimJoint73
HAnimSegment74
HAnimSite75
IMPORT76
IS77
Inline78
IntegerSequencer79
IntegerTrigger80
KeySensor81
LineProperties82
LineSet83
LoadSensor84
MetadataDouble85
MetadataFloat86
MetadataInteger87
MetadataSet88
MetadataString89
MovieTexture90
NavigationInfo91
NormalInterpolator92
NurbsCurve93
NurbsCurve2D94
NurbsOrientationInterpolator95
NurbsPatchSurface96
NurbsPositionInterpolator97
NurbsSet98
NurbsSurfaceInterpolator99
NurbsSweptSurface100
NurbsSwungSurface101
NurbsTextureCoordinate102
NurbsTrimmedSurface103
OrientationInterpolator104
PixelTexture105
PlaneSensor106
PointLight107
Polyline2D108
Polypoint2D109
PositionInterpolator110
PositionInterpolator2D111
ProtoBody112
ProtoDeclare113
ProtoInterface114
ProximitySensor115
ReceiverPdu116
Rectangle2D117
ScalarInterpolator118
Scene119
SignalPdu120
Sound121
SphereSensor122
SpotLight123
StringSensor124
Text125
TextureBackground126
TextureCoordinateGenerator127
TimeSensor128
TimeTrigger129
TouchSensor130
TransmitterPdu131
TriangleFanSet132
TriangleSet133
TriangleSet2D134
TriangleStripSet135
Viewpoint136
VisibilitySensor137
WorldInfo138
X3D139
component140
connect141
field142
head143
humanoidBodyType144
meta145
CADAssembly146
CADFace147
CADLayer148
CADPart149
ComposedCubeMapTexture150
ComposedShader151
ComposedTexture3D152
FloatVertexAttribute153
FogCoordinate154
GeneratedCubeMapTexture155
ImageCubeMapTexture156
ImageTexture3D157
IndexedQuadSet158
LocalFog159
Matrix3VertexAttribute160
Matrix4VertexAttribute161
PackagedShader162
PixelTexture3D163
ProgramShader164
QuadSet165
ShaderPart166
ShaderProgram167
TextureCoordinate3D168
TextureCoordinate4D169
TextureTransform3D170
TextureTransformMatrix3D171
BallJoint172
BoundedPhysicsModel173
ClipPlane174
CollidableOffset175
CollidableShape176
CollisionCollection177
CollisionSensor178
CollisionSpace179
ColorDamper180
ConeEmitter181
Contact182
CoordinateDamper183
DISEntityManager184
DISEntityTypeMapping185
DoubleAxisHingeJoint186
EaseInEaseOut187
ExplosionEmitter188
ForcePhysicsModel189
GeoProximitySensor190
GeoTransform191
Layer192
LayerSet193
Layout194
LayoutGroup195
LayoutLayer196
LinePickSensor197
MotorJoint198
OrientationChaser199
OrientationDamper200
OrthoViewpoint201
ParticleSystem202
PickableGroup203
PointEmitter204
PointPickSensor205
PolylineEmitter206
PositionChaser207
PositionChaser2D208
PositionDamper209
PositionDamper2D210
PrimitivePickSensor211
RigidBody212
RigidBodyCollection213
ScalarChaser214
ScreenFontStyle215
ScreenGroup216
SingleAxisHingeJoint217
SliderJoint218
SplinePositionInterpolator219
SplinePositionInterpolator2D220
SplineScalarInterpolator221
SquadOrientationInterpolator222
SurfaceEmitter223
TexCoordDamper224
TextureProperties225
TransformSensor226
TwoSidedMaterial227
UniversalJoint228
ViewpointGroup229
Viewport230
VolumeEmitter231
VolumePickSensor232
WindPhysicsModel233

A.2.3 Attribute name table

The attribute name table as defined in FI 8.5 is preloaded with the values described in Table A.3. The optional value prefix and namespace attributes are blank.

Table A.3 — Attribute name table initial values

FieldID
DEF1
USE2
containerField3
fromNode4
fromField5
toNode6
toField7
name8
value9
color10
colorIndex11
coordIndex12
texCoordIndex13
normalIndex14
colorPerVertex15
normalPerVertex16
rotation17
scale18
center19
scaleOrientation20
translation21
url22
repeatS23
repeatT24
point25
vector26
range27
ambientIntensity28
diffuseColor29
emissiveColor30
shininess31
specularColor32
transparency33
whichChoice34
index35
mode36
source37
function38
alpha39
vertexCount40
radius41
size42
height43
solid44
ccw45
key46
keyValue47
enabled48
direction49
position50
orientation51
bboxCenter52
bboxSize53
AS54
InlineDEF55
accessType56
actionKeyPress57
actionKeyRelease58
address59
altKey60
antennaLocation61
antennaPatternLength62
antennaPatternType63
applicationID64
articulationParameterArray65
articulationParameterChangeIndicatorArray66
articulationParameterCount67
articulationParameterDesignatorArray68
articulationParameterIdPartAttachedArray69
articulationParameterTypeArray70
attenuation71
autoOffset72
avatarSize73
axisOfRotation74
backUrl75
beamWidth76
beginCap77
bindTime78
bottom79
bottomRadius80
bottomUrl81
centerOfMass82
centerOfRotation83
child1Url84
child2Url85
child3Url86
child4Url87
class88
closureType89
collideTime90
content91
controlKey92
controlPoint93
convex94
coordinateSystem95
copyright96
creaseAngle97
crossSection98
cryptoKeyID99
cryptoSystem100
cutOffAngle101
cycleInterval102
cycleTime103
data104
dataFormat105
dataLength106
dataUrl107
date108
deadReckoning109
deletionAllowed110
description111
detonateTime112
dir113
directOutput114
diskAngle115
displacements116
documentation117
elapsedTime118
ellipsoid119
encodingScheme120
endAngle121
endCap122
enterTime123
enteredText124
entityCategory125
entityCountry126
entityDomain127
entityExtra128
entityID129
entityKind130
entitySpecific131
entitySubCategory132
exitTime133
extent134
family135
fanCount136
fieldOfView137
filled138
finalText139
fireMissionIndex140
fired1141
fired2142
firedTime143
firingRange144
firingRate145
fogType146
forceID147
frequency148
frontUrl149
fuse150
geoCoords151
geoGridOrigin152
geoSystem153
groundAngle154
groundColor155
hatchColor156
hatchStyle157
hatched158
headlight159
horizontal160
horizontalDatum161
http-equiv162
image163
importedDEF164
info165
innerRadius166
inputFalse167
inputNegate168
inputSource169
inputTrue170
integerKey171
intensity172
jump173
justify174
keyPress175
keyRelease176
knot177
lang178
language179
leftToRight180
leftUrl181
length182
lengthOfModulationParameters183
level184
limitOrientation185
lineSegments186
linearAcceleration187
linearVelocity188
linetype189
linewidthScaleFactor190
llimit191
load192
loadTime193
localDEF194
location195
loop196
marking197
mass198
maxAngle199
maxBack200
maxExtent201
maxFront202
maxPosition203
metadataFormat204
minAngle205
minBack206
minFront207
minPosition208
modulationTypeDetail209
modulationTypeMajor210
modulationTypeSpreadSpectrum211
modulationTypeSystem212
momentsOfInertia213
multicastRelayHost214
multicastRelayPort215
munitionApplicationID216
munitionEndPoint217
munitionEntityID218
munitionQuantity219
munitionSiteID220
munitionStartPoint221
mustEvaluate222
navType223
networkMode224
next225
nodeField226
offset227
on228
order229
originator230
outerRadius231
parameter232
pauseTime233
pitch234
points235
port236
power237
previous238
priority239
profile240
progress241
protoField242
radioEntityTypeCategory243
radioEntityTypeCountry244
radioEntityTypeDomain245
radioEntityTypeKind246
radioEntityTypeNomenclature247
radioEntityTypeNomenclatureVersion248
radioID249
readInterval250
receivedPower251
receiverState252
reference253
relativeAntennaLocation254
resolution255
resumeTime256
rightUrl257
rootUrl258
rotateYUp259
rtpHeaderExpected260
sampleRate261
samples262
shiftKey263
side264
siteID265
skinCoordIndex266
skinCoordWeight267
skyAngle268
skyColor269
spacing270
spatialize271
speed272
speedFactor273
spine274
startAngle275
startTime276
stiffness277
stopTime278
string279
stripCount280
style281
summary282
tdlType283
tessellation284
tessellationScale285
time286
timeOut287
timestamp288
title289
toggle290
top291
topToBottom292
topUrl293
touchTime294
transmitFrequencyBandwidth295
transmitState296
transmitterApplicationID297
transmitterEntityID298
transmitterRadioID299
transmitterSiteID300
transparent301
triggerTime302
triggerTrue303
triggerValue304
type305
uDimension306
uKnot307
uOrder308
uTessellation309
ulimit310
vDimension311
vKnot312
vOrder313
vTessellation314
version315
verticalDatum316
vertices317
visibilityLimit318
visibilityRange319
warhead320
weight321
whichGeometry322
writeInterval323
xDimension324
xSpacing325
yScale326
zDimension327
zSpacing328
visible329
repeatR330
texture331
back332
front333
left334
right335
parts336
isSelected337
isValid338
numComponents339
depth340
update341
fogCoord342
texCoord343
activate344
programs345
matrix346
anchorPoint347
body1348
body2349
mustOutput350
body1AnchorPoint351
body2AnchorPoint352
plane353
appliedParameters354
bounce355
frictionCoefficients356
minBounceSpeed357
slipFactors358
softnessConstantForceMix359
softnessErrorCorrection360
surfaceSpeed361
isActive362
useGeometry363
set_destination364
set_value365
tau366
tolerance367
value_changed368
initialDestination369
initialValue370
angle371
variation372
surfaceArea373
frictionDirection374
slipCoefficients375
category376
country377
domain378
extra379
kind380
specific381
subcategory382
axis1383
axis2384
desiredAngularVelocity1385
desiredAngularVelocity2386
maxAngle1387
maxTorque1388
maxTorque2389
minAngle1390
stopBounce1391
stopConstantForceMix1392
stopErrorCorrection1393
suspensionErrorCorrection394
suspensionForce395
body1Axis396
body2Axis397
hinge1Angle398
hinge1AngleRate399
hinge2Angle400
hinge2AngleRate401
set_fraction402
easeInEaseOut403
modifiedFraction_changed404
force405
geoCenter406
centerOfRotation_changed407
geoCoord_changed408
orientation_changed409
position_changed410
isPickable411
viewport412
activeLayer413
align414
offsetUnits415
scaleMode416
sizeUnits417
layout418
objectType419
pickedNormal420
pickedPoint421
pickedTextureCoordinate422
intersectionType423
sortOrder424
axis1Angle425
axis1Torque426
axis2Angle427
axis2Torque428
axis3Angle429
axis3Torque430
enabledAxies431
motor1Axis432
motor2Axis433
motor3Axis434
stop1Bounce435
stop1ErrorCorrection436
stop2Bounce437
stop2ErrorCorrection438
stop3Bounce439
stop3ErrorCorrection440
motor1Angle441
motor1AngleRate442
motor2Angle443
motor2AngleRate444
motor3Angle445
motor3AngleRate446
autoCalc447
duration448
retainUserOffsets449
isBound450
appearance451
createParticles452
lifetimeVariation453
maxParticles454
particleLifetime455
particleSize456
colorKey457
geometryType458
texCoordKey459
pickable460
angularDampingFactor461
angularVelocity462
autoDamp463
autoDisable464
disableAngularSpeed465
disableLinearSpeed466
disableTime467
finiteRotationAxis468
fixed469
forces470
inertia471
linearDampingFactor472
torques473
useFiniteRotation474
useGlobalForce475
constantForceMix476
constantSurfaceThickness477
errorCorrection478
iterations479
maxCorrectionSpeed480
preferAccuracy481
pointSize482
stopBounce483
stopErrorCorrection484
angleRate485
maxSeparation486
minSeparation487
separation488
separationRate489
closed490
keyVelocity491
normalizeVelocity492
surface493
anisotropicDegree494
borderColor495
borderWidth496
boundaryModeS497
boundaryModeT498
boundaryModeR499
magnificationFilter500
minificationFilter501
textureCompression502
texturePriority503
generateMipMaps504
targetObject505
backAmbientIntensity506
backDiffuseColor507
backEmissiveColor508
backShininess509
backSpecularColor510
separateBackColor511
displayed512
clipBoundary513
internal514
gustiness515
turbulence516

 

A.2.4 Attribute value table

The attribute value table as defined in FI 8.4 is preloaded with the values described in Table A.4.

Table A.4 — Attribute value table initial values

ValueID
false1
true2

 

A.2.5 Encoding algorithm table

The X3D-specific encoding algorithm table as defined in FI 8.4 is preloaded with the values described in Table A.5.

Table A.5 — Encoding algorithm URI table initial values

IndexEncoding algorithm URI
32encoder://web3d.org/QuantizedFloatArrayEncoder
33encoder://web3d.org/DeltazlibIntArrayEncoder
34encoder://web3d.org/QuantizedzlibFloatArrayEncoder
35encoder://web3d.org/zlibFloatArrayEncoder
36encoder://web3d.org/QuantizedDoubleArrayEncoder
37encoder://web3d.org/zlibDoubleArrayEncoder
38encoder://web3d.org/QuantizedzlibDoubleArrayEncoder
39encoder://web3d.org/RangeIntArrayEncoder
 

--- X3D separator bar ---