API đơn giản nhất để sử dụng trong scala để thực hiện các truy vấn XPath sau trên tài liệu là gì?Thực hiện các truy vấn XPath phức tạp trong Scala
//s:Annotation[@type='attitude']/s:Content/s:Parameter[@role='type' and not(text())]
//s:Annotation[s:Content/s:Parameter[@role='id' and not(text())]]/@type
(s
được định nghĩa là một biệt hiệu cho một không gian tên cụ thể)
Các tài liệu duy nhất mà tôi có thể tìm thấy trên các thư viện XML của Scala không có thông tin về việc thực hiện các truy vấn XPath thực phức tạp.
Tôi đã từng thích JDOM cho mục đích này (bằng Java), nhưng vì JDOM không hỗ trợ Generics, sẽ rất khó để làm việc với Scala. (Thư viện XML khác cho Java có xu hướng thậm chí còn đau đớn hơn trong Java, nhưng tôi thừa nhận tôi không biết cảnh quan thật tốt.)
gì 's: ...' có nghĩa là gì? Tôi cho rằng nó liên quan đến các không gian tên, nhưng tôi không thể tìm thấy nó trong đặc tả XPath. –
Vâng, đó là tiền tố không gian tên. Xem đoạn thứ hai-đến-cuối của phần giới thiệu, nơi nó nói "Trong ngữ pháp sau đây, các phi-terminal QName và NCName được định nghĩa trong [XML Names], và S được định nghĩa trong [XML]." Biểu thức 's: Annotation' là một QName. –