我的问题如下:我有一堆 Xpath 查询,我希望能够获得这些查询解析到的元素的类型,但形成底层xsd 模式。因此,例如给定架构:
...
<xs:complexType name="ResultType">
<xs:sequence>
<xs:element name="BUS" type="m:VectorType" />
<xs:element name="VM" type="m:VectorType" />
<xs:element name="VA" type="m:VectorType" />
<xs:element name="QG" type="m:VectorType" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="VectorType">
<xs:sequence>
<xs:element name="Value" type="xs:double" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
...
以及//BUS/Value
我希望能够以//BUS/Value
编程方式检查类型的查询(来自Java代码)。我已经使用 ApacheXMLSCHEMA、XSOM 等解析模式,但是一旦我有了解析的模式,这些库似乎都没有为我提供直接获取嵌套元素类型的方法,例如上面的那个。有没有办法做到这一点,或者我是否必须将 xpath 查询分解为 BUS 和 Value,获取 BUS 的类型,然后在该复杂类型中查找 Value 的类型?