我有一个xml文件,我发出了XPath请求。但它只在没有xmlns-namespace
的情况下有效。你能帮我添加正确的命名空间限定符(我有错误)吗?
的xml:
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'>
<EventData>
<Data Name="ObjectServer">Security</Data>
<Data Name="ObjectType">File</Data>
<Data Name="ObjectName">C:\Temp\Project1.txt</Data>
</EventData>
</Event>
的XPath:
*[EventData[Data[@Name="ObjectName" and (ends-with(text() ,".exe") or ends-with(text() ,".txt"))]]]
P.S。我正在使用C ++。我的代码基于msdn的example。但我认为这并不重要,因为我正在使用在线XPath tester检查此请求。
感谢。
答案 0 :(得分:0)
试试这个:
//*[local-name()='EventData' and ./*[local-name()='Data']
[@Name="ObjectName"and
(ends-with(text() ,".exe") or ends-with(text() ,".txt"))]]