DTDs are just for validation

Len Bullard cbullard at hiwaay.net
Fri Apr 2 01:23:38 BST 1999

David Megginson wrote:
> Marcus Carr writes:
>  > Surely the overhead of looking at the DTD outweighs the benefit
>  > (none) obtained in rendering the above example?
> There *is* a potentially nasty problem lurking here: the DTD may
> contain default values for attributes as well as validation
> information.  In the SGML version of DocBook, there is not a problem,
> but what if the new version of DocBook had something like this?
>   <!ATTLIST para
>     xmlns CDATA #FIXED "http://www.oasis-open.org/docbook/">
> I suspect that industry practice will be always to run XML through a
> normaliser before publishing, so that the attribute default values get
> plugged right into the instance.

There is no common practice to depend on and no means 
of specifying common support.  Great.

>From the X3D Contributors list, part of a design discussion 
about using XML for 3D where the issue is, is it necessary 
to use XML syntax or can hooks be built into VRML97.  

"Bullard, Claude L (Len)" wrote:
> So I guess the following may be what you after
> <!ATTLIST myX3DThang
>    defname ID #IMPLIED
>    myVRMLThang NAME  #FIXED "/whereItIs/itIs.wrl" >
> <myX3DThang id="myThang">
> .... more Thangs
> </myX3DThang>

>From Chris Marrin:

Yes, we are almost there. Let's say I have the following VRML PROTO:

PROTO myX3DThang [ eventIn SFColor changeColor ]
    Shape {
        appearance Appearance {
            material Material { diffuseColor IS changeColor }
        geometry Sphere { }

This is in the file itIs.wrl. I would have to add the changeColor field
to the DTD for myX3DThang. My DTD syntax is poor so I will leave the
specifics as an exercise for the reader. Now I can say the following in
a script:

    myThang.changeColor = "1 0 0"

to change the sphere to red, correct?

If that is true, then we have a fine syntactic connection. The remaining
question is, how do I write an implementation that will actually render

Once that is solved, the big design issues arise. How do I communicate
data OUT of the PROTO? How do I propagate style into the PROTO? How do I
get the VRML model of eventIn/eventOut/field/exposedField to the XML
notion of attributes? How does the DOM concept of event listening fit in
here? These are all design issues and hard decisions will have to be

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)

More information about the Xml-dev mailing list