获取子节点名称

问题描述 投票:0回答:1

这是xml:

<?xml version = "1.0"?>
<class>
   <student>
      <firstname>Dinkar</firstname>
      <lastname>Kad</lastname>
      <nickname>Dinkar</nickname>
      <marks>85</marks>
   </student>
</class>

我想写一个返回的XQuery:

firstname
lastname
nickname
marks

逻辑上这应该工作:

/class/student/*::name()

但它不起作用! 你知道什么是正确的XQuery来获取孩子的节点名称列表?

xml xquery
1个回答
1
投票

您可以使用以下代码返回子项的名称:

for $nam in doc("source.xml")/class/student/*
return name($nam)

或者你可以使用这个更简单的表达式:

/class/student/*/name()

这仅适用于XQuery 1.0支持的XPath-2.0。

© www.soinside.com 2019 - 2024. All rights reserved.