Frage

anstelle von MSXML als DOM-Hersteller Open XML zu verwenden, mit Delphi IXMLDocument Schnittstelle

Ist es sicher?

Gibt es bekannte Einschränkungen in grundlegenden Funktionen, die mir bewusst sein sollte?

Und wie das Open XML und Xerces-Implementierungen unterscheiden? (Xerces benötigt zusätzliche Bibliotheken, während Open XML scheint in der ausführbaren iirc aufgenommen werden)

War es hilfreich?

Lösung

Abhängig von, was Sie brauchen. MSXML ist mit sehr vielen Funktionen und unterstützt Dinge wie Schema und XPath unter anderem. IIRC, OpenXML bietet nur DTD Unterstützung und hat sich nicht viel TLC in den letzten Jahren geworden. Ich habe großen Respekt für Dieter Köhler Arbeit, seit er ein Pionier in den frühen Tagen von Delphi und XML war. Ich weiß nicht, ob ich es als die beste Lösung heute empfehlen würde.

Wenn Sie IXMLDocument OpenXML ist sicherlich eine Option benötigen, aber ich würde mit MSXML bleiben, es sei denn Sie bestimmte Bedenken über MSXML haben (zum Beispiel müssen Merkmale einer bestimmten Version). Wenn Sie zu anderen Bibliotheken offen sind, ist hier eine nicht erschöpfende Liste von anderen Optionen können Sie prüfen:

  • DIXML - Kommerziell - Aktuelle und mit sehr vielen Funktionen (Www.yunqa.de/delphi/doku.php/products/xml/index)

  • XMLPartner - Open Source - Nicht sicher, aktuellen Status, überprüft CG NGs für die letzten Aktualisierungen (sourceforge.net/projects/tpxmlpartner)

  • OmniXML - Open Source, gutes Design, ähnlich API IXMLDocument IIRC (Www.omnixml.com)

  • NativeXML - Gewerbe, Nicht Validieren, sehr schnell, nicht-Standard, aber einfache API (www.href.com/nativexml) Hinweis ; NativeXML ist von Nils Haeck von SimDesign.nl Nils' Website ist zurzeit an der moment..a langen Geschichte dahinter.

  • FWIW - ich persönlich habe NativeXML und OmniXML verwendet und habe keine     Beschwerden. Ich habe bei DIXML suchen, da es ein sehr hat     beeindruckendes Feature-Set, dass ich für ein bestimmtes Projekt benötigen.

David

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top