2017-02-12 14 views
3

私は、以下のXMLのためのXSLTにしようとしています:XSLT(IBM Watson Explorer)でxsl:の "or条件"を使用するにはどうすればよいですか?

<?xml version="1.0" encoding="UTF-8"?> 
    <results> 
       <headline> 
        <a href="/bin-public/xyz/documents/customer-service/durable-power-of-bank.pdf"></a> 
        </headline>  
        <linkPDF><a href="www.xyz.com"></a></linkPDF> 
    </results> 
    <results> 
        <headline> 
        <a href="www.example.com"></a> 
        </headline>  
        <linkPDF></linkPDF> 
    </results> 
    <results> 
        <headline> 
        <a href="www.example.html"></a> 
        </headline>  
        <linkPDF><a href="www.abc.com"></a></linkPDF> 
    </results> 

私は2つの条件を追加したい:見出し/ HREFは、PDF以外のエンドポイントURLまたはどこlinkPDFは、任意の値が含まれているが含まれています。

これは私のXSLT条件であるが、それは働いていない:テスト:

だから、
<xsl:when test="not(viv:test(./headline/a/@href,'*.pdf','wc')) or 'linkPDF/a/href'"> 
<!-- do something --> 
</xsl:when> 

は、どのように私はVIVで、 "OR" 条件を使用できますか?または、viv:testをXSLTで使用せずに同じことをすることはできますか?何か助けていただければ幸いです。

+0

2番目のオペランドが単一引用符で囲まれているのはなぜですか? – EJP

答えて

2

変更

or 'linkPDF/a/href' 

or linkPDF/a/href 

or式の第二項ではなく、リテラル文字列でXPathを評価しました。

+0

それは働いた。ありがとう – Rose

関連する問題