Sự khác biệt giữa exclude-result-prefixes
và extension-element-prefix
là gì? Cả hai đều được sử dụng trong tiêu đề XSLT. Tôi đã tìm thấy extension-element-prefix
khi sử dụng EXSLT và EXSLT website Howto nói rằng extension-element-prefix
được sử dụng để "ngăn không cho các không gian tên của tiện ích mở rộng xuất hiện trong cây kết quả".Sự khác nhau giữa các tiền tố loại trừ-kết quả và tiền tố phần tử mở rộng trong khai báo không gian tên XSLT là gì?
Nhưng điều này không đúng (sử dụng libxslt). Chỉ exclude-result-prefixes
xóa không gian tên tiện ích. Vậy tại sao tôi cần extension-element-prefix
???
mẫu:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:exsl="http://exslt.org/common" version="1.0"
extension-element-prefix="exsl">
<xsl:template match="/">
<blabla/>
</xsl:template>
</xsl:stylesheet>
đầu ra của tôi với libxslt (xsltproc):
<?xml version="1.0"?>
<blabla xmlns:exsl="http://exslt.org/common"/>
Ah ok. Điều này thật ý nghĩa. Tôi chỉ tự hỏi tại sao tôi nên sử dụng 'prefix-element-prefix' vì tôi có thể loại bỏ nó hoàn toàn bằng' http: // exslt.org/common'. Dường như tài liệu EXSLT là ** sai ** ở phần này. – therealmarv
hoặc 'extension-element-prefix' chỉ ẩn các phần tử từ cây đầu ra cần' tiền tố phần tử mở rộng'. Để được lưu trên đường dẫn, tôi sẽ sử dụng 'extension-element-prefix' và' exclude-result-prefixes' cả hai cùng một lúc khi tôi sử dụng các thư viện mở rộng như EXSLT. – therealmarv
Một số người sử dụng tiền tố phần tử mở rộng tất cả thời gian khi họ chỉ cần loại trừ tiền tố kết quả, và EEP có hai hiệu ứng: nó cho phép bạn sử dụng không gian tên cho phần tử mở rộng (đặc quyền bạn có thể bỏ qua), và nó thêm không gian tên vào danh sách ERP. –