[relaxng-user] RELAX NG and system entities

Sebastian Rahtz sebastian.rahtz at computing-services.oxford.ac.uk
Sat Nov 20 18:18:14 ICT 2004

Matthew Burgess wrote:

> From what I can gather, being a complete newbie to RELAX NG, system 
> entities aren't usable with RELAX NG (and schema languages in general).
The two are unrelated, really. Entity expansion takes place at the XML 
parsing stage, before validation by schema
is applied. Any XML processor has to read a DTD subset, grok the 
entities declared there, and expand instances later.
You can't _declare_ entities in a schema, as you used to be able to with 
external DTDs, thats the difference.

Your example will carry on working just fine, if you just remove
   SYSTEM "myDoctype.dtd"
and use a RelaxNG validator or other XML tool. Well, maybe some tools
will protest, but the ones I use daily (jing, libxml2, rnv) do
what I expect.

Sebastian Rahtz      
Information Manager, Oxford University Computing Services
13 Banbury Road, Oxford OX2 6NN. Phone +44 1865 283431

OSS Watch: JISC Open Source Advisory Service

More information about the relaxng-user mailing list