RE: XSchema

Ronald Bourret (rbourret@ito.tu-darmstadt.de)
Wed, 11 Nov 1998 13:37:40 +0100


Peter Murray-Rust wrote:

> 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.

If I ever find time to write a validation module, on-the-fly validation =
should be a freebie. I figure the validator will be a SAX parser filter =
initialized with an XSchema document. The application (e.g. Jumbo) =
hooks this to a real parser, registers an ErrorHandler, and passes the =
Stream of XML to be validated; the return value from parse(), along with =
any values sent to the ErrorHandler, tell the application whether =
validation succeeded or not.

> I have used RonB's DTD2XSchema translator - works fine, but I think =
Ron
> said it needed slight tweaks.=20

Still needs updating to the latest spec. Works starts this weekend.

> ** 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 misread this at first. What Peter wants is either (a) the system ID =
of the external subset, or (b) the stream of bytes in the complete DTD. =
I assume the reason is so he can automatically feed it to my =
DTD-to-XSchema converter; currently, he would have to prompt the user =
for this information.

Another alternative is to fix my converter so it can read the DTD =
directly from the XML file and discards the rest (it currently reads =
only external subsets). Is there any advantage to working only with =
external subsets?

-- Ron Bourret