Was verwenden Sie in Ihren Anwendungen für die Umwandlung von XML-Daten in andere Datentypen? WARUM?XQuery vs XSLT zum Transformieren von Daten
Antwort
Während XQuery kann für einfache Transformationen verwendet werden, fehlt es die Leistung und Sofistiation von XSLT (insbesondere Vorlagen und die <xsl:apply-templates>
Anweisung).
XSLT ist eine Sprache, die speziell für die Verarbeitung von Baumstrukturen entwickelt wurde. Es ist immer noch am besten, dies zu tun.
In Fällen, in denen auf eine XML-Datenbank zugegriffen wird, wäre es eine gute Entscheidung, (die Effizienz von) XQuery zu verwenden, um die notwendigen XML-Knoten zu extrahieren und dann die Transformation mit XSLT durchzuführen. Einige XSLT 2.x/XQuery-Prozessoren erlauben dies (über Erweiterungen) schon jetzt. Die nächste Welle von XSLT 2.x/XQuery 1.x-Spezifikationen wird diese Interoperabilität höchstwahrscheinlich zu einem offiziellen Merkmal dieser Sprachen machen.
Es hängt davon ab, welche Art von "Transformation" Sie benötigen, XQuery ermöglicht Ihnen Abfragen auf Ihre XML-Daten, ein bisschen wie SQL.
XSLT ermöglicht Ihnen, einen Stil auf XML anzuwenden, wie CSS mit HTML.
Ich stimme überhaupt nicht mit der Aussage "XSLT ermöglicht es Ihnen, einen Stil auf XML anwenden, wie CSS mit HTML.". XSLT ist nicht zu XML was CSS zu HTML ist. CSS teilt einem Prozessor mit, wie der HTML-Code angezeigt werden soll. XSLT wird verwendet, um die Daten in etwas anderes zu transformieren. Sie können XSLT verwenden, um XML in HTML umzuwandeln, damit ein Prozessor weiß, wie die Daten angezeigt werden sollen, aber wie der Prozessor das resultierende HTML anzeigt, hat nichts mit XSLT zu tun. –
XSLT ist weitaus komplexer als CSS. Mit XSLT können Sie Elemente und Attribute zu oder von der Ausgabedatei hinzufügen/entfernen. Sie können Elemente auch neu anordnen und sortieren, Tests durchführen und Entscheidungen treffen, welche Elemente versteckt und angezeigt werden sollen und vieles mehr. – Premraj
Wenn Sie die Wikipedia Entry betrachten, haben sie einen Abschnitt, der die beiden vergleicht.
Aus meiner Sicht sehe ich XSLT als eine programmierbare Präsentationsebene für Daten.
- 1. XML mit XSLT transformieren
- 2. Xslt Format von XML-Dokument zu transformieren
- 3. XML mit XSLT in PHP transformieren
- 4. Microsoft.Reporting. * Vs XML/XSLT
- 5. Transformieren von XML in XML mit XSLT - hässlich Coldfusion Export
- 6. Werkzeuge zum Debuggen von Xslt
- 7. XSLT zum Konvertieren von XML
- 8. XSLT zum Generieren eines anderen XSLT-Skripts
- 9. XML mit XSLT transformieren und CDATA (in Ruby) erhalten
- 10. Transformieren von XML in HTML eingebettet
- 11. XSLT zum Entfernen von Millisekunden aus Timestamp
- 12. XSLT-Umwandlung zum Ausschluss von Namespace
- 13. XQuery zum Filtern der dynamischen Zeilenliste
- 14. Xquery Problem
- 15. Funktion zum Konvertieren von Hexen zu Ascii in Xquery
- 16. MarkLogic: XQuery zum Abrufen von Werten aus XML-Dokumenten?
- 17. R transformieren Daten mit mehreren Werten
- 18. Bloodhound.js: Transformieren Sie die von einer Remote-Quelle zurückgegebenen Daten?
- 19. XSLT mit Xalan vs. STX mit Joost
- 20. XSLT und XQuery bei ungültiger HTML-Eingabe, Teile von URI sehen wie Entitäten aus
- 21. xslt auswählen = "." vs select = "<tag name>"
- 22. XSLT um eine Reihe von Elementen in eine einzige Liste zu transformieren?
- 23. Debuggen von XQuery - XPTY0019 Fehler
- 24. WSO2APIM: XSLT-Datei für XSLT-Mediator einfügen
- 25. Aktueller Knoten vs. Kontextknoten in XSLT/XPath?
- 26. mit Funktionen vs Verwendung von Vorlagen in xslt?
- 27. Konvertieren von Daten von Namen zu Zahlen in XSLT
- 28. Verwenden von XQuery in Linq To SQL?
- 29. Daten mit Benutzereingabe dynamisch transformieren (Highcharts, JavaScript, Django)
- 30. Core-Daten vs SQLite
Gute Frage: +1. Siehe meine Antwort für eine fundierte Meinung. –