不幸的是,我无法处理Speedata的Laout.xml中的XPath语法。我已经编程XSL很多年了,也许我有点负担过重。我试图评估的XML具有以下结构:
<export>
<object>
<fields>
<field key="demo1:DISPLAY_NAME" lang="de_DE" origin="default" ftype="string">Anwendungsbild</field>
<field key="demo1:DISPLAY_NAME" lang="en_UK" origin="inherit" ftype="string">application picture</field>
<field key="demo1:DISPLAY_NAME" lang="es_ES" origin="self" ftype="string">imagen de aplicación</field>
</fields>
</object>
</export>
尝试使用以下XPath输出元素节点失败。
export/object/fields/field[@key='demo1:DISPLAY_NAME' and @lang='de_DE' and @origin='default']
请问我如何在Speedata Publisher中制定查询?
感谢我们的帮助。
speedata软件只支持XPath的一小部分。你有两个选项
- 使用提供的Saxon XSLT处理器预处理数据
- 自己迭代数据:
<Layout xmlns="urn:speedata.de:2009/publisher/en"
xmlns:sd="urn:speedata:2009/publisher/functions/en">
<Record element="export">
<ForAll select="object/fields/field">
<Switch>
<Case test="@key='demo1:DISPLAY_NAME' and @lang='de_DE' and @origin='default'">
<SetVariable variable="whatever" select="."/>
</Case>
</Switch>
</ForAll>
<Message select="$whatever"></Message>
</Record>
</Layout>
(输入文件为data.xml
(