/ / Analisi XML problematico in Querypath (punti negli elementi) - xml, parsing, pear, querypath

Analisi dell'XML problematico in Querypath (punti negli elementi) - xml, parsing, pear, querypath

Sto cercando di analizzare un documento NewsML (http://www.iptc.org/std/NewsML-G2/2.7/examples/LISTING2_NewsML-G2_Complete.xml) con querypath. Ma ho problemi con i punti in alcuni elementi, come <body.head>.

In alcuni plugin querypath di firefox sono in grado di sfuggire al punto con una barra rovesciata, ma nella libreria php pera questo non funziona.

Qualche idea?

(Sto cercando una soluzione all'interno di Querypath, non soluzioni alternative)

risposte:

0 per risposta № 1

In passato, ho utilizzato l'estensione Tidy PHP (http://us3.php.net/manual/en/book.tidy.php) per ripulire HTML / XML prima di passarlo a QueryPath.

L'XML a cui hai fatto riferimento sopra è abbastanza pulito e anche piuttosto piccolo.

Se l'unico problema sono i punti nei nomi degli elementi, probabilmente funzionerebbe anche la preelaborazione con un'espressione regolare. E sarebbe la soluzione più veloce. Immagino che potresti fare un preg_replace("/<body./g", "<body-", $xml) e fallo aggiustare. (Quello sostituirebbe body.content con body-content e così via.)