[
Lists Home |
Date Index |
Thread Index
]
Bruce,
> Calling for a new "r" element with string "data" on an empty tree
You will need more than this. A DTD does not define a root element, take for
instance Docbook where you can write a book as well as an article against
the same DTD. So you need to specify at least the root element you want to
use.
There are some tools that generate an element content (oXygen does it too
but it does not enter into choices). In the general case you will not know
before hand what information will be needed to unambiguously generate an
instance document. In your example you specify that some element must be
present with some text content but this is not enough. A solution for the
general case will be to walk through the DTD model starting from the desired
root element and just ask the user when there is more than one possible path
to follow.
If your problem reduces to only one choice model and you know the root then
specifying what element from the choice group must be present should be
enough.
Hope that helps,
George
-------------------------------------------------------------
George Cristian Bina mailto:george@oxygenxml.com
<oXygen/> XML Editor - http://www.oxygenxml.com/
----- Original Message -----
From: "Bruce Kulik" <bkulik@alum.mit.edu>
To: <xml-dev@lists.xml.org>
Sent: Monday, January 12, 2004 4:41 PM
Subject: [xml-dev] Looking for tools to build valid XML file.
> I am looking for a software module to help create valid XML given a
> DTD and an element name and data. For example, suppose you have the
> following simple DTD:
>
> <!ELEMENT a (x , y , z)>
> <!ELEMENT x (#PCDATA)>
> <!ELEMENT y (q | r)*>
> <!ELEMENT z (#PCDATA)>
> <!ELEMENT q (#PCDATA)>
> <!ELEMENT r (#PCDATA)>
>
> Calling for a new "r" element with string "data" on an empty tree
> would result in:
>
> <a>
> <x/>
> <y>
> <r>data</r>
> </y>
> </a>
>
> Then calling for a new "q" element with string "string" would result
> in:
>
> <a>
> <x/>
> <y>
> <r>data</r>
> <q>string</q>
> </y>
> </a>
>
> Does anybody know of such a library or product?
>
> Bruce Kulik
>
>
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
>
> The list archives are at http://lists.xml.org/archives/xml-dev/
>
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://lists.xml.org/ob/adm.pl>
>
|