【发布时间】:2012-12-10 13:11:32
【问题描述】:
xml 文件看起来像
<employees>
<employee id='1'>
<Profile_Name>admin</Profile_Name>
<UserName>user</UserName>
</employee>
<employee id='2'>
<Profile_Name>Admin</Profile_Name>
<UserName>USER</UserName>
</employee>
<employee id='3'>
<Profile_Name>Adminnn</Profile_Name>
<UserName>userrrr</UserName>
</employee>
这是我的 xpath
employees/employee
[not(Deleted)]
[Profile_Name[last()]
[translate(.,
'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'abcdefghijklmnopqrstuvwxyz'
)
]
=
'admin'or
UserName[last()]
[translate(.,
'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'abcdefghijklmnopqrstuvwxyz'
)
]
=
'user'
]
它应该选择没有Deleted 子元素和Profile_Name = admin 或UserName = user 的employee 元素,无论profileName 和UserName 的情况如何
它工作正常,但不考虑字符大小写。
它应该返回employee,id = 1 和 2
【问题讨论】:
-
请编辑问题并提供: 1) 完整(但简短)的 XML 文档; 2)必须选择哪些节点。 3) 选择规则说明。
-
@DimitreNovaatchev:完成
-
HebaEl-Fadly,我编辑了问题并格式化了 XPath 表达式,使其现在可读且易于理解。请参阅我的答案以获取我认为选择所需节点的 XPath 表达式。
-
查看更新的答案——我添加了基于 XSLT 的验证,这表明选择了正确的元素。