In diesem Abschnitt soll kurz die Entwicklung zu der vorliegenden DTD zusammengefasst werden.
Ausgehend von VRML wurde von uns zunächst überlegt, welche Knoten auf jeden Fall in der DTD verwendet werden sollten. Dabei war von Beginn an klar, dass Interaktion und Animation in diesem ersten Schritt unberücksichtigt bleiben sollen. Letztendlich kam als Kompromiss die vorliegende Version heraus, in der beispielsweise die VRML-Knoten Group und Transform durch das einzige Element Group ersetzt worden sind. Ebenfalls wurde der Knoten Geometry zunächst in unsere X3D-Spezification übernommen, am Ende dann allerdings doch wieder entfernt, da unserer Meinung nach die Elemente Sphere, PointSet, IndexedLineSet und IndexedFaceSet direkt in Shape aufgerufen werden können. Shape soll immer nur ein geometrisches Objekt beinhalten. Dadurch lässt sich die Anzahl verwendeter Tags reduzieren, ohne dass die Gliederung unübersichtlicher wird. Zur Verdeutlichung folgen zwei Beispieldateien, eine nach alter, eine nach neuer Version. Dabei sind die Tags , die in der neuen Version wegfallen bzw. geändert wurden durch Unterstreichungen kenntlich gemacht.
Beispiel
Ausschnitt aus Pyramidealt.x3d
<?xml version=''1.0''
encoding=''UTF-8''?>
<!DOCTYPE X3DScene SYSTEM ''X3D.dtd''>
hspace0.5 <X3DScene>
<Group>
<Shape DEF=''pyramide''>
<Geometry>
<IndexedFaceSet>
.
.
.
</IndexedFaceSet>
</Geometry>
</Shape>
<TransformGroup>
<Rotation x=''2'' y=''3'' z=''0'' rad=''23''/>
<Group>
<Shape USE=''pyramide''/>
</Group>
</TransformGroup>
<Group>
</X3DScene>
Ausschnitt aus Pyramide.x3d
<X3DScene>
<Group>
<Shape DEF=''pyramide''>
<IndexedFaceSet>
.
.
.
</IndexedFaceSet>
</Shape>
<Group>
<Rotation x=''2'' y=''3'' z=''0'' rad=''23''/>
<Shape USE=''pyramide''/>
</Group>
</Group>
</X3DScene>
Anhand dieses einfachen Beispiels wird deutlich, dass zunächst
überflüssige Elemente in die DTD eingebaut worden waren, die zur
besseren Gliederung gedacht waren. In der alten Version hätte Geometry
immer direkt von Shape umschlossen werden müssen, weshalb man
sich gleich auf Shape beschränken kann.