Lloyd
Mon Aug 28 18:37:12 CDT 2006
>> However that doesn't work, if I disable the DTD, I get an XmlException:
>> "The DTD is deactivate, activate it this way..."
>>
>> So I'm stuck between a rock and a hard place.
>> I don't want to valid the DTD because there is no network and the XML
>> reader doesn't want to read the XML document because the DTD is not
>> validated...
>
> Just cut out the DocType Declaration before the file gets processed
> (ie pass it through a filter of some kind, like sed).
I had avoid that if I could.
That makes it forgetfulness prone. Our Mac developer edit the fil with the
PList editor which puts that in. Every time they edit a file I will have to
go after them.....
>
> Or filter it so that the SYSTEM Identifier resolves to a local file,
> and keep a copy of the DTD at that filename.
>
that's interesting! how do I do that?
I tryed to set my own XmlResolver but, unless I write a bug during my
experimentation, that didn't work... (I'm a bit suspicious though...)
> ///Peter
> --
> XML FAQ:
http://xml.silmaril.ie/
>
>> "John Saunders" <john.saunders at trizetto.com> wrote in message
>> news:uPhDCTkyGHA.2392@TK2MSFTNGP03.phx.gbl...
>>> "Lloyd Dupont" <net.galador@ld> wrote in message
>>> news:%23qBd%23ijyGHA.3428@TK2MSFTNGP02.phx.gbl...
>>>> I have some XML file like that:
>>>>
>>>> ===
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
>>>> "
http://www.apple.com/DTDs/PropertyList-1.0.dtd">
>>>> <plist version="1.0">
>>>> <dict>
>>>> <key>affiliateId</key>
>>>> <string>AFL9124395098</string>
>>>> ..........................
>>>> ===
>>>>
>>>> Now when I'm reading them with XmlDocument or XmlTextReader the reader
>>>> try to connect to aple (because of <!DOCTYPE plist PUBLIC "-//Apple
>>>> Computer//DTD PLIST 1.0//EN"
>>>> "
http://www.apple.com/DTDs/PropertyList-1.0.dtd">)
>>>> and that causes exception when there is no network (and of course the
>>>> XmlTextReader or XmlDocument fail to read the text)
>>>>
>>>> The problem is: I don't care about apple schema, I do the reading
>>>> myself and it's going to be alllright.
>>>> Is there a way I could skip over it?
>>> I believe that if you set the XmlResolver property of the XmlTextReader
>>> to null, it will ignore the remote DTD. If that doesn't do it, you could
>>> define your own XmlResolver derived class which processes the remote DTD
>>> in any way you like.
>>>
>>> John
>>>
>>>
>>