![]() |
MSXML: Nicht valide Nodes ignorieren
Hallo zusammen,
![]() Gruß Mr_G |
Re: MSXML: Nicht valide Nodes ignorieren
*push* :duck:
|
Re: MSXML: Nicht valide Nodes ignorieren
Hallöle,
nunja vll bastelste dir was aus den Angaben, die ParseError.Code, ParseError.SrcText und so weiter geben. Genaueres kann ich dir leider zur Zeit auch nicht sagen...versuche mich selbst an dem MSXML und er lädt nicht falls die geladene Datei mit dem XSD Schema nicht 100% übereinstimmt. |
Re: MSXML: Nicht valide Nodes ignorieren
Nunja... ich hab auch schon übelegt ob ich das selber bastel aber derzeit glaube ich es ist in meinem Fall fast einfacher nicht mit XSD zu validieren sondern einfach bei Zugriffsfehlern den aktuellen Vorgang abzubrechen.
Sollte es eine einfache Lösung mit MSXML geben: Immer her damit... |
Re: MSXML: Nicht valide Nodes ignorieren
Ich parse die XML-Datei bisher und breche den Vorgang bei einem Fehler ab, dann lade ich sie ohne Überprüfung
in mein Textfeld und markiere mit ParseError.Line die Zeile (benutzte dafür SynEdit) und gebe unten die ParseError.Reason aus...sodass man wenigstens weiß was an der XML-Datei falsch ist. Nun habe ich allerdings das Problem das wenn ich ein Schema einbinde, der Namespace identisch mit dem aus der Datei sein muss...also...so ganz fehlerfrei funktioniert es bisher nicht...aber ich schau mal weiter...durchwühle schon die ganze Zeit die MSXML 4.0 SDK Dokumentation. MfG Alaitoc |
Re: MSXML: Nicht valide Nodes ignorieren
So eine Ausgabe wäre bei mir eher nicht praktikabel, denn es geht um einen Dienst der die Daten ausliest. Ich denke ich werde das ohne XSD machen und evtl. auftretende Fehler abfangen, sodass ich zumindest die korrekten Nodes alle einlesen kann. Alternativ wäre ganz abzubrechen aber das gefällt mir eigentlich nicht so gut.
|
Re: MSXML: Nicht valide Nodes ignorieren
Nunja was vll. möglich wäre...bei DOMDocument60 also bei MSXML 6.0 kann man scheinbar die einzelnen Nodes validieren, gibt da eine Funktion wo man einen Knoten angibt und dann einen ParseError zurück kriegt.
MfG Alaitoc |
Re: MSXML: Nicht valide Nodes ignorieren
Das wäre natürlich eine interessante eine Alternative. Danke für den Tipp!
|
Re: MSXML: Nicht valide Nodes ignorieren
Nur was mir dabei aufgefallen ist, ich kann ein einmal hinzugefügtes Schema nichtmehr entfernen.
Da erscheint nur eine Exception "Keine Implementierung"...keine Ahnung ob das nur bei mir ist.+ Edit: Habe es mal gelöst, indem ich jedesmal die SchemaCollection neuerstelle...etwas unschön...aber scheinbar entstehen auch keine MemoryLeaks. MfG Alaitoc |
Re: MSXML: Nicht valide Nodes ignorieren
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz