1

我有一个带有附加架构的 XML,有没有办法确定一个元素是否属于附加架构中定义的复杂类型?

前任:

架构

<element name="Cosmin" type="CosminType" />
<element name="Cosmin2" type="CosminType" />

XML

<parent>
    <cosmin>bla</cosmin>
</parent>

我想制作一个XPath可以识别所有类型的元素CosminType,无论是它Cosmin还是Cosmin2.

我想知道是否有类似的东西:

//parent/*[@type="CosminType"]

我试过@xsi:type了,它不起作用。如果没有任何效果,我会尝试在内部找到一些独特的东西CosminType并获得parent,在我的情况下将是Cosminand Cosmin2。但这不是一个很好的解决方案。

4

1 回答 1

0

首先你需要元素名称,因为这个需要在附加的 XSD 中搜索:

/parent/cosmin/name()

这个应该用于在附加的 XSD 中进行搜索,例如:

document('attached xsd')//element[@name=/parent/cosmin/name()]/@type

希望这可以帮助

于 2013-09-17T09:29:30.943 回答