___ tag123xml ___ Die XML-Datei (Extensible Markup Language) ist ein flexibles, strukturiertes Dokumentformat, das Codierungsregeln für Menschen und Maschinen definiert.
___ qstnhdr ___ Können Sie mit antixml XML-Dokumente erstellen?
___ tag123scala ___ Scala ist eine universelle Programmiersprache, die hauptsächlich auf die Java Virtual Machine abzielt. Entwickelt, um gängige Programmiermuster in einer prägnanten, eleganten und typsicheren Weise auszudrücken, vereint es sowohl imperative als auch funktionale Programmierstile. Seine Hauptmerkmale sind:
fortgeschrittenes statisches System mit Typinferenz;
Funktionstypen; Muster-Matching; implizite Parameter und Konvertierungen; Überlastung des Bedieners; volle Interoperabilität mit Java; Nebenläufigkeit
___ tag123antixml ___ Ein Reinraumersatz für scala.xml
___ answer10437397 ___
Wenn Sie nicht andere Teile von anti-xml verwenden, würde ich bei den Scala-Literalen bleiben. Wenn Sie jedoch nach einer besseren Alternative mit einem schönen Builder-DSL, vor Ort Updates, XPath-Nutzung (DSL und String-basiert) usw. suchen, dann würde ich einen Blick auf Scales vorschlagen. Von der 0.3-RC5-Veröffentlichungsseite (http://scala-scales.googlecode.com/svn/sites/scales/scales-xml_2.9.1/0.3-RC5/index.html):
%Vor%
Auch für die direkte Serialisierung können Sie Streaming nutzen, da das Scales Xml-Modell das Modell für Streaming und baumbasierte Verarbeitung vereint.
Ich bin kurz vor einem 0.3-RC6 mit vielen weiteren Dokumenten (und einem sehr coolen XML-Vergleichsframework), aber ich warte darauf, zuerst zum Sonatentyp zu migrieren. (Eta nächste Woche)
Es gibt ein paar Beispiele für die Verwendung von Anti-Xml zum Extrahieren von Informationen aus XML-Dokumenten, aber keines, das ich mit Anti-Xml zum Erstellen von XML-Dokumenten finden könnte. Unterstützt Anti-Xml das Erstellen von Dokumenten oder sollte ich dafür eine andere Bibliothek verwenden (welche?). Hat jemand ein Beispiel für die Erstellung eines XML-Dokuments mit Anti-Xml?
Ja, Sie können XML-Dokumente erstellen (und serialisieren):
%Vor%
Sie können auch Anti-XMLs Zipper verwenden, um einige interessante Bearbeitungstricks zu machen:
%Vor%
Jetzt enthält newDoc
das bearbeitete Dokument:
%Vor%
Das Zipper
, das doc \ "foo"
zurückgibt, ist anders von einem NodeSeq
in dem es Informationen über seinen Kontext enthält, der es ermöglicht Sie können die von \
durchgeführte Auswahloperation rückgängig machen.
Update als Antwort auf ziggystar Kommentar unten: Wenn Sie etwas wie Scala XML-Literale wollen, können Sie einfach verwenden convert
auf einem beliebigen scala.xml.Elem
:
%Vor%
Ich hatte angenommen, dass es sich bei der Frage um eine programmatische Erstellung handelte.