"Morten" <morten@kikobu.com> skrev i en meddelelse
news:3C6B9FE1.6080304@kikobu.com...
> Martin Elkjær Nielsen wrote:
>
> Kunden har vel betalt tastebureauet for at løse en opgave. Hvis deres
> XML dokumenter ikke er well-formed, så er opgaven ikke løst. XML i
> dataudveksling er ofte betragtet som en kontrakt mellem 2 parter, et
> veldefineret format, hvor ganske få regler er overholdt. I dit
> tilfælde overholder leverandøren ikke sin del af "kontrakten".
>
Helt enig, og i fremtiden har de også lovet at anvende den DTD de har fået
udleveret fra starten. Problemet består i at få indlæst de 16.000 skemaer
der er indtastet (uden brug af DTD'en som de havde lovet), på den mest
smidige måde. Hvem der så betaler for de timer jeg skal bruge, det lader jeg
min chef om at diskutere
> Af ren nysgerrighed, hvilke pakker er XMLParser og DOMParser i? En model
> du evt. kan bruge er, at implementere SAX. Jeg vil antage at du bare som
> altid vil få smidt events i hovedet indtil der er noget galt. Det er ret
> nemt at implementere.
org.apache.xerces.parsers
Jeg vil prøve at kigge lidt på SAX parser som også findes i denne pakke. Det
ser ud til at den kan løse lidt af problemet.
>
> Et lille tip. Jeg har for nyligt arbejdet på >40.000 XML dokumenter,
> hvis det tager JVM'en bare 1 sekund at initialisere for hvert
> dokument, har du et overhead på over 10 timer. Hvis du har alle
> dokumenterne som well-formed XML, er det ligetil at konkatenere dem
> og wrappe den fremkomne fil med nyt root tag, prolog osv.
Imponerende så mange tips, man kan få ved at stille et spørgsmål
Men jeg tror jeg holder mig til den nuværende løsning, da der kun kommer ca.
600 dokumenter om dagen, og EDI postkassen tømmes ca. hver time. En
indlæsning tager ca. 1 sek for hele processen (fra åbning af fil til DB er
opdateret).
mvh
Martin