Firstly to say many thanks to those who have contributed and especially to
Ron Bourret, Simon StL and John Cowan [I hope I haven't missed anyone] for
driving this through.
It is exactly what is wanted at present. The mapping onto the DTD is
precise and essential for me. Without it I suspect that it would be more
difficult to implement correctly.
I have fitted it to JUMBO with the functions:
- offering a list of potential child elements for a given element. [This
doesn't yet do on-the-fly content validation and I doubt it will. It gives
a JComboBox of the possible children. If someone has a Model validation
routine I can fit it.] This allows XSchema-drive editing of element names
and structure.
- offering a table of attributes with the various options (Required,
Value, etc.) driving the editability of various fields.
By implication, of course, the editor can be used to edit XSchemas.
I have used RonB's DTD2XSchema translator - works fine, but I think Ron
said it needed slight tweaks.
** Is there a way of capturing the external DTD subset in SAX, or AElfred,
or any other parser? It really only needs to capture the URL? Do I have to
subclass an Entity handler? In this way it would be possible to read in the
DTD automatically, transform to XSchema and display.] **
** Is there any way to extract the complete "DTD" - i.e. external and
internal subsets (but without parameter/general entities) from
SAX/AElfred/XYZPQR? **
I hope to release the XSchema-aware JUMBO (i.e. a structure/attribute-aware
XML editor) very shortly so people can verify if I have got the mechanics
right and whether this is something useful.
P.
Peter Murray-Rust, Director Virtual School of Molecular Sciences, domestic
net connection
VSMS http://www.nottingham.ac.uk/vsms, Virtual Hyperglossary
http://www.venus.co.uk/vhg