小编Mar*_*k H的帖子

如何使用出现约束为无序的XML节点列表创建模式

给定像这样的XML布局,我正在尝试创建一个XSD架构来验证它.

<RootNode>
  <ChildA />
  <ChildC />
  <ChildB />
  <ChildB />
  <ChildA />
</RootNode>
Run Code Online (Sandbox Code Playgroud)

要求如下:

  • ChildA,ChildB和ChildC可以按任何顺序出现.(<xs:sequence>不适合)
  • ChildA是强制性的,但可能会多次出现.
  • ChildB是可选的,可能会多次出现.
  • ChildC是可选的,可能发生一次.

我通常用来创建无序节点列表的技术是使用a <xs:choice maxOccurs="unbounded">与列表中的每个可能节点,但是,我无法minOccurs="1"在ChildA上创建约束和ChildC maxOccurs="1"上的约束.(选择的出现次数优先于此处的元素).

<xs:element name="RootNode">
  <xs:complexType>
    <xs:choice minOccurs="1" maxOccurs="unbounded">
      <xs:element name="ChildA" minOccurs="1"/>
      <xs:element name="ChildB" />
      <xs:element name="ChildC" maxOccurs="1"/>
    </xs:choice>
  </xs:complexType>
</xs:element>
Run Code Online (Sandbox Code Playgroud)

xml xsd

17
推荐指数
1
解决办法
1万
查看次数

为什么{get; set;}访问器没有初始值(VS 2010 C#)

这肯定已被多次询问,但我找不到....抱歉......

为什么不允许以下内容?

public string MyString ="initial value"{get; 私人集;}

(Visual C#Express 2010)

c# default properties

4
推荐指数
1
解决办法
4816
查看次数

标签 统计

c# ×1

default ×1

properties ×1

xml ×1

xsd ×1