The project is about taking any class dictionary and changing
it to a new class dictionary that defines an XML language.
We call this process XMLizing a class dictionary.
(XMLize is a new word that we just invented.)
The translation is useful for
generating a visitor that prints out an object in XML form.
translation from non-XML languages to XML languages
having an alternative way to define an XML language (without using a DTD
or an XML schema)
A = B C.
B = Float.
C : X | Y.
X = "x".
Y = "y".
XMLized:
A = "" B C "".
B = "" Float "".
C : X | Y.
X = "" "".
Y = "" "".
Notice the rules in this example:
1. Construction class A is mapped to "" ... "".
2. All concrete syntax from the original class dictionary
is deleted. Notice how the "x" and "y" disappeared.
3. Alternation classes don't get delimiters "" ... "".
In one application
you can use DemeterJ to generate the print visitor from
the XMLIzed class dictionary.
An you can copy it into your original directory and call it
XMLPrintVisitor.
Maybe you can allow the user some control how the
XMLization should be done.
Proposed phase 1
Only construction and alternation classes as in the
above example.