Using grammars to generate XML data
amitr at abinfosys.com
Wed Jun 30 13:24:56 BST 1999
Traditionally, an XML grammar (something like what's defined in the spec)
is used by parsers to check the syntax of input XML files
for conformance to XML.
- Is it proper usage of an XML grammar to be used by
XML data generators to generate XMLised data?i.e
I am wanting to use an XML grammar not to validate XML data
but to generate XMLised data conforming to that grammar.
Is it logical, proper to be using an
XML grammar for driving a XMLised data generator application?
- If yes, how would such a XML data generator
implement the production rules and use them to generate XMLised data?
Let me explain my point with an example.
Let's say I have the following XML grammar:
 Document := '<Document>' (Element)+ '</Document>'
 Element := '<Element>' CharData '</Element>'
 CharData := [^<&]* - ([^<&]* ']]>' [^<&]*)
Let's say I wish to build an XMLised data generator which
would take the following input stream:
and produce the following output stream:
This is an XMLised version of the input stream conforming to rules 1-3
In order to produce the above XMLised output thru the XMLised generator
I am planning
- To let the data generator use rules 1-3 i.e.
For an input 'abc' the data generator would
- start building a syntax tree with non terminal 'Document' as the root,
looking at rule ,
- On each character of the input stream encountered, the 'Element' non
(rule ) present in rule  would be expanded and the current input
would replace the 'CharData' non terminal in rule 
This way I can get the the entire XMLised output as a parse tree using the
XML grammar. This XML parse tree can then be outputted to a file.
- Would it be proper grammar usage to be writing a 'XML data generator'
application which would use rules 1-3 to generate XML data
conforming to rules 1-3?
- Are there any such data generators available?If so I'd be
grateful if someone could pass me relevant pointers on the web.
- How would such a data generator application implement
the grammar rules?
Thanks in advance for any replies,
A.B. Infosys Private Limited,
B-102, Gulmohar Park,
New Delhi - 110049,
EMail: amit at abinfosys.com
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;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev