[PHP][DOM] Entities weghalen uit een document

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Beste Tweakers,

Ik zit met een vreemd "probleem" niet dat het echt een probleem is maar een typisch iets van vaag.

We zijn bezig met een XML feed te maken volgens de NITF specificaties http://www.nitf.org/ omdat het gaat om nieuws artikelen en dit de standaard moet worden in onze applicatie.

De start van zo'n dergelijk XML document ziet er uit als:

XML:
1
2
3
4
5
6
7
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE NewsML PUBLIC "urn:iptc:std:newsml:1.1:spec:xmlns"  "http://www.afp.com/dtd/NewsMLv1.1.dtd" [
    <!ENTITY % nitf SYSTEM "http://www.afp.com/dtd/nitf-3-1.dtd">
    %nitf;
]>
<NewsML Version="1.1">
</NewsML>


Om een XML document te genereren volgens bovenstaande specificaties heb ik al proberen te creeëren met DOMImplementation::createDocumentType maar krijg ik het niet voor elkaar. :(

Wat ik als tussen oplossing heb gedaan is de bovenstaande XML ingeladen met DOMDocument::loadXML() en dan doet hij het wel goed maar krijg ik de volgende code:

*knip* opgelost :)

Ofwel het lijkt alsof hij de hele definitie van de DTD embed ofzo, heb een aantal instellingen geprobeerd zoals resolveExternals op false etc maar niets blijkt te werken. Ook is de documentatie op PHP erg mager en daarnaast bied NITF PHP doctype ook weinig tevreden resultaten op in Google..


Wie kan mij verder helpen :?

[ Voor 3% gewijzigd door Verwijderd op 13-06-2007 19:34 . Reden: opgelost :) ]


Acties:
  • 0 Henk 'm!

  • t-x-m
  • Registratie: November 2003
  • Laatst online: 24-08 11:21

t-x-m

.NET Nerd

Fatal error: Class feedDocument contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (feedInterface::getXML) in /home/www/ircm.mpublisher.nl/htdocs/feed/pharmainsite.php on line 47

GC.Collect();


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Klopt, ik ben er al mee verder. Door te googlen ben ik tot de conclusie gekomen dat (external) entities altijd geresolved moet worden. Een oplossing om al deze "rotzooi" weg te krijgen was om de entity DTD lokaal te hosten en naar te verwijzien, zodat XML hem niet embed.