p:load?

I've always wondered what exactly is the use of p:identity and p:load. I
recently imaged a possible use case for p:identity, but p:load can only be
used for those exact same cases.

Another case is DTD validation of course. However, without that, it's like
p:identity.

OK. up to the point now. I propose the following changes (all of which will
probably have to be made so that no features are lost):

1. Remove p:load.

2. Add p:validate-dtd. Possibly as a required step. There's already
p:validate-xml-schema, p:validate-schematron and p:validate-relax-ng, so
what's just another p:validate-*? It actually even seems more intuitive to
me. Once upon a time, I was even close to proposing it, but then saw the
p:load step. If it's removed, such step should be added to neutralize it's
loss.

3. Add "validate-on-parse" and "resolve-externals" options to p:document so
that those could be performed on load, as with p:load rather than on demand
(this would also turn p:identity used with those options equivalent to the
current state of p:load). The semantics of those two options are as in DOM
("resolve-externals" however should probably be "no/false" by default). I
think the resolve-externals options is needed as it's a life saving one is
some cases, and yet a big performance booster in others. If those options
are added p:validate-dtd may not even be needed (unless the WG wanted to
encourage usage of DTDs as a good validation method).

Regards,
Vasil Rangelov

Received on Friday, 7 September 2007 21:40:44 UTC