2012-06-08 29 views

Trả lời

6

Tuyên bố IF có được phép HOẶC điều kiện không?

Không, nhưng XPath có nhà điều hành or - lưu ý rằng XPath là ngôn ngữ phân biệt chữ hoa chữ thường.

Biểu thức XPath trong mã được cung cấp:

node = '1' or node='2' 

là đúng cú pháp.

orstandard XPath operator và có thể được sử dụng để kết hợp hai biểu thức con.

[33] OperatorName :: = 'and' | 'hoặc' | 'mod' | 'Div'

Dưới đây là hoàn chỉnh một ví dụ chuyển đổi XSLT:

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output omit-xml-declaration="yes" indent="yes"/> 
<xsl:strip-space elements="*"/> 

<xsl:template match="node()|@*"> 
    <xsl:copy> 
    <xsl:apply-templates select="node()|@*"/> 
    </xsl:copy> 
</xsl:template> 

<xsl:template match="num[ . = 3 or . = 5]"/> 
</xsl:stylesheet> 

Khi chuyển đổi này được áp dụng trên các tài liệu XML sau:

<nums> 
    <num>01</num> 
    <num>02</num> 
    <num>03</num> 
    <num>04</num> 
    <num>05</num> 
    <num>06</num> 
    <num>07</num> 
    <num>08</num> 
    <num>09</num> 
    <num>10</num> 
</nums> 

các truy nã, kết quả chính xác được tạo (tất cả các phần tử được sao chép ngoại trừ <num>03</num><num>05</num>:

<nums> 
    <num>01</num> 
    <num>02</num> 
    <num>04</num> 
    <num>06</num> 
    <num>07</num> 
    <num>08</num> 
    <num>09</num> 
    <num>10</num> 
</nums> 
1

Bạn có thể sử dụng hoặc giống như bạn đã làm trong ví dụ của mình. Here là các toán tử được hỗ trợ trong XSLT.

+0

Oleksi: Toán tử của ngôn ngữ XPath nằm trong đặc tả W3C tương ứng - đây là tài liệu * chuẩn * duy nhất cho XPath. ** Đăng một tham chiếu đến w3schools là không đúng và thực sự là một lời khuyên xấu cho OP **. Đọc thêm về sự đáng tin cậy của w3schools tại: http://w3fools.com/ –

+0

Liên kết hiện có 404. – dummy

Các vấn đề liên quan