[xml] formatteren

Pagina: 1
Acties:

  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
Hallo, ik heb een xml output van een systeem, van 10 losse files, die allen in een andere structuur eruit komen. Deze wil ik dus eerst normaliseren naar een standaard formaat:

code:
1
2
3
4
5
6
7
<a><b>c</b></a>

wordt dan

<a>
  <b>c</b>
</a>

Ik heb zelf iets met xquery gedaan die het doet, maar die is nogal traag. Verder heb ik via de site van textpad een plugin gedownload die ook los gebruikt kan worden. Deze doet het wel snel, alleen maakt deze overal weer ansi characters van ( & #235; wordt ë), terwijl deze niet mogen in XML. Het moet nl wel via de dos prompt aangeroepen kunnen worden. Heeft iemand een suggestie.

Ik probeer het trouwens in dit forum omdat hier waarschijnlijk de meeste mensen kijken die er ervaring mee zouden kunnen hebben...

[ Voor 12% gewijzigd door Krooswijk.com op 11-05-2006 09:50 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

[google=xml tidy]? :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
die gaf bij mij hetzelfde probleem, maar deze doet het goed:
http://www.kitebird.com/software/xmlformat/

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Krooswijk.com schreef op donderdag 11 mei 2006 @ 09:49:
Deze doet het wel snel, alleen maakt deze overal weer ansi characters van ( & #235; wordt ë), terwijl deze niet mogen in XML.
Dit is onzin. Waar haal je dat vandaan?

Rustacean


  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
nou als ik achtereenvolgens in mijn browser de volgende xml bestanden open:

xml1
XML:
1
2
3
4
<?xml version="1.0" encoding="UTF-8"?>
<data>
  <name>pati&# 235;nt</name>
</data>

en
XML:
1
2
3
4
<?xml version="1.0" encoding="UTF-8"?>
<data>
  <name>patiënt</name>
</data>

krijg ik de eerste keer geen foutmelding en de tweede keer wel: An invalid character was found in text content. Error processing resource...

Omdat ik de file aangeleverd krijg en door stuur kan ik er niet zomaar iso-8859-1 van maken. Daarom zocht ik iets die niet zomaar converteerde...

[ Voor 14% gewijzigd door Krooswijk.com op 11-05-2006 16:21 ]


Verwijderd

Vraagje: waarom wil je die XML eigenlijk "normaliseren"?
Voor XML zelf boeit whitespace of indentation absoluut niet, en het werkt zelfs marginaal sneller wanneer er geen overbodige whitespace in je XML staat. 't Maakt 't alleen wat beter 'human readable', maar over het algemeen hoeft een gebruiker helemaal niet direct naar die XML te kijken.

Moet die gebruiker er onverhoopt toch naar kijken, dan open je die file toch in een browser die er een XSL transformatie overheen jast? (IE doet dat prachtig, Mozilla/Firefox een stuk rudimentairder).

En als 'ie ge-edit moet worden pak je een XML editor, toch? Ikzelf zweer bij XML Spy...

  • Krooswijk.com
  • Registratie: Mei 2000
  • Laatst online: 17-08-2024
Ja als je op je client ermee werkt is dat prima, maar hier dienen er er op een backend systeem in een geautomatiseerd proces gegevens uit te worden getransformeerd. Ik heb die geprobeerd met Galax, een tool voor het uitvoeren van Xquery, maar deze deed het veel te traag. Nu ik het met perl regel voor regel uitlees werkt het supersnel...

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Is er voor Perl geen mogelijkheid om snel XML uit te lezen? Andere scriptingtalen bieden DOM- en XML-functies, en ik kan me eigenlijk amper voorstellen dat Perl die niet heeft? :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1