[jdom-interest] JDOM XMLSchema + DTD validation error

Geert Delanote geert.delanote at gmail.com
Wed Jun 24 08:15:09 PDT 2009


There is no validation at all anymore then?

My workaround now is :
			SAXBuilder builder = new SAXBuilder(false);
			Document doc = builder.build(new File("PathToMyFile"));
			doc.setDocType(null);
			SAXBuilder valBuilder = new SAXBuilder(true);
			valBuilder.setFeature("http://apache.org/xml/features/validation/schema",
true);
			valBuilder.build(new StringReader(new
org.jdom.output.XMLOutputter().outputString(doc)));

Using the same builder twice with the extra statement
builder.setValidation(true) doesn't work : I don't understand why...


On Wed, Jun 24, 2009 at 11:38 AM, Michael Kay<mike at saxonica.com> wrote:
> Try new SAXBuilder(false).
>
> You don't actually want DTD validation, you just want entity expansion,
> which should happen anyway.
>
> Regards,
>
> Michael Kay
> http://www.saxonica.com/
> http://twitter.com/michaelhkay
>
>> -----Original Message-----
>> From: jdom-interest-bounces at jdom.org
>> [mailto:jdom-interest-bounces at jdom.org] On Behalf Of Geert Delanote
>> Sent: 24 June 2009 10:11
>> To: jdom-interest at jdom.org
>> Subject: [jdom-interest] JDOM XMLSchema + DTD validation error
>>
>> How do you combine XMLSchema validation with the use of DTD's
>> (for entities)?
>>
>> I have an XMLSchema describing my XML instances. An instance
>> is a combination of some parts. The parts can be used in
>> multiple wholes.
>> So I thought to work in the following way :
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <!DOCTYPE whole [
>> <!ENTITY p7 SYSTEM "p7.xml">
>> <!ENTITY p8 SYSTEM "p8.xml">
>> ]>
>> <whole xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:noNamespaceSchemaLocation="mySchema.xsd">
>> &p7;
>> &p8;
>> </whole>
>>
>> My Java code is :
>> SAXBuilder builder = new SAXBuilder(true);
>> builder.setFeature("http://apache.org/xml/features/validation/
>> schema", true); doc = builder.build(new File("PathToMyFile"));
>>
>> Parsing the input file gives the following error : "Element
>> type "whole" must be declared."
>>
>> Anyone an idea what I'm doing wrong?
>> _______________________________________________
>> To control your jdom-interest membership:
>> http://www.jdom.org/mailman/options/jdom-interest/youraddr@you
>> rhost.com
>
>


More information about the jdom-interest mailing list