Same
for VRML and X3D. It has route structures. I tend to think of
it as
a
network of objects, not a hierarchy. X3D has a hierarchy in the
XML
encoding because it has to have a root node. In the VRML, encoding,
it
doesn't. USE nodes provide, define one use everywhere functionality.
There
is a hierarchy of objects with some inheritance of properties, and
to
nest finite coordinate spaces. X3D like VRML likes a one pass
parse.
In
X3D, it is the object model that is dominant, not the syntax. I agree
with
your answer. On the other hand, the schema for a system like this
is
cumbersome and ugly.
len
The answer largely depends on the data being
modelled and the generality of the representation. The "has a" relationship is
probably not too specific and thus contributed to your question.
However a "has private members" relationship is
definitely better presented in a hierarchical way. For example:
<date>
<day>30</day>
<month>1</month>
<year>2005</year>
</date>
There is analogy to this in programming languages -- members of a class
may be private or public and a private class may be defined inline (nested) to
be used solely by the encompassing class.
Whenever the data to be represented is not hierarchical (no single root,
repeating subtrees, loop structures), then it becomes necessary to realise
that an arc is an object in itself and has to be represented separately. A
good example is the XGMML (eXtensible Graph Markup and Modeling
Language):
|