[
Lists Home |
Date Index |
Thread Index
]
That sounds good and is technically correct but experience
says that any encoding for an application type that has
x percentage of the market will have to be handled by
any implementation for that type. It opens portals to hell.
Prudence and possibly resources argue that even where
there can be multiple encodings for an application type,
there will be at best one or two and that these will have
reasons for being that have nothing to do with expressiveness,
but possibly legacy or efficiency considerations.
X3D is a working example. There are three encodings:
1. Classic VRML - the curly encoding. Tight and fast
and a legacy of the original VRML design inherited from
Silicon Graphics. Well loved and will never be pried
from the hands of those that use it because it really
is the best encoding from a comp-sci point of view
and from an eyeball point of view. PFE counts braces.
2. XML - the pointy encoding. Not tight or fast but
very popular and comes with a toolkit that lots of
people have, mainly a trivial parser because XML
editors are not very applicable to graphics. Support
for XML was very contentious but turned out to be
very cheap and convenient, so why not.
3. Binary - currently only an RFP. Necessary because
the 'terseness is of minimal importance' rule doesn't
apply to real time 3D graphics in very large distributed
simulations. GZIP, by the way, is a given for VRML and
has been since 2.0, so this isn't that. We already do that.
No brainer.
An X3D browser ultimately ends up supporting all three
of these and GZIP. Don't shock the monkey. Yet more encodings
have costs so communities of interest should beware arguments
that come down to lossless transcoding. I don't accept that
syntax is fundamental, but I don't kiss off cheap
and convenient without regard. Fewer encodings is better.
Systems interoperate. Data is portable.
len
From: tpassin@comcast.net [mailto:tpassin@comcast.net]
So if the default were xml, we would get full interop the same as we do now.
No need for a parser to have to decode all those other encodings.
|