Pada proyek kami, kami memiliki implementasi antarmuka org.w3c.dom.* kami sendiri.

Apakah Saxon mendukung evaluasi kueri XPath 2.0 bukan melalui XML itu sendiri, tetapi lebih dari instance org.w3c.dom.*?

0
Vlad Lubenskiy 10 November 2017, 23:03

1 menjawab

Jawaban Terbaik

Ya, memang. Anda dapat menggunakan antarmuka JAXP XPath atau antarmuka s9api: kami merekomendasikan s9api karena antarmuka JAXP tidak pernah dirancang untuk model data XPath 2.0 yang lebih kaya, misalnya tidak ada cara untuk mengembalikan urutan string.

Saxon sedikit lebih lambat saat menjalankan DOM daripada saat menggunakan model TinyTree asli Saxon, dengan faktor 5-10. Tentu saja jika itu adalah implementasi DOM Anda sendiri, maka (a) kinerja dapat bervariasi, dan (b) selalu ada risiko bug, mis. DOM Anda mungkin 100% sesuai dengan spesifikasi DOM tetapi masih berperilaku berbeda dari implementasi DOM apa pun yang telah diuji oleh Saxon.

Saxon-EE 9.8 memperkenalkan cara baru menangani navigasi pohon DOM yang disebut model Domino. Ini menimbulkan biaya di muka dalam membangun indeks untuk pohon DOM guna memberikan peningkatan kinerja pada navigasi berikutnya. Jangan gunakan ini jika DOM bisa berubah (yaitu, jika konten berubah antara satu evaluasi ekspresi XPath dan lainnya) karena perubahan tersebut akan membatalkan indeks.

1
Michael Kay 10 November 2017, 20:49