繁体   English   中英

使用XSOM获取xs:choice maxOccurs和minOccurs属性

[英]Getting the xs:choice maxOccurs and minOccurs attributes with XSOM

我有一段架构代码:

<xsd:choice minOccurs="0" maxOccurs="unbounded">
  <xsd:element ref="ref1"/>
  <xsd:element ref="ref2"/>
  <xsd:element ref="ref3"/>
  <xsd:element ref="ref4"/>
  <xsd:element ref="ref5"/>
</xsd:choice>

我正在使用Java的XSOM库,我想检索有关xsd:choice元素中描述的minOccurs和maxOccurs的信息。 我在互联网上环顾四周,但只能找到从实际元素中检索此信息的解决方案,而不是xs:choice元素。

我还确定了可以“捕捉”xs:choice元素的地方:

public void startElement(XSModelGroup arg0) {
  if (arg0.getCompositor() == XSModelGroup.CHOICE) {

  }
}

我在这里想要实现的是区分多项选择“选择”和单项选择。 如果有人可以提供帮助,我会非常感激。

如果您从XSComplexType开始,您可以从XSConmpleType开始,从XSContentType,您可以执行asParticle()以将内容作为粒子; 从粒子中你可以使用getTerm()来获取组件结构层次结构中的子元素; 对于一个模式组(可能包括xs:choice)的术语,您可以执行asModelGroup()以获得下一个级别。 XSParticle是minOccurs()和maxOccurs()属性可用的地方。 这是一个非常奇怪的模型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM