【发布时间】:2011-12-11 09:02:25
【问题描述】:
我试图只选择那些变量值等于其他变量值的节点。确切的文字是这样的:
<xsl:value-of select="/data/peptides/peptide/protein_accessions[accession = ./accession/accs]" />
但它不起作用。我想不可能在谓词中放置节点值表达式。但是,我也很难相信。所以这就是我在这里问的原因:)
这个表达有什么问题??
谢谢!
编辑: xml 代码是这样的:
<data>
<proteins>...</proteins>
<peptides><peptide>...<protein_accessions><accession>89456</accession></protein_accessions>...</peptide>...</peptides>
</data>
还有什么不能用
<xsl:value-of select="/data/peptides/peptide/protein_accessions[accession = ./accession/accs]" />
适用于
<xsl:value-of select="/data/peptides/peptide/protein_accessions[accession = current()/accession/accs]" />
但是,我在应用模板调用中使用它,我仍然不确定这个表达式是否符合我的要求(选择具有该特定编号的所有肽节点),但至少我可以继续并尝试一下:)
谢谢!
【问题讨论】:
-
XPath 表达式中没有变量。请把你的术语弄清楚。 (变量看起来像
$variable,你一定是别的意思。) -
其实我是用“变量”这个词来表示可变内容,所以每次评估句子时它都会改变。也许“动态”会是一个更好的词。
标签: xslt dynamic xpath predicate