4
基本上,如果这是.NET,它应该是这样的:XSD序列,具体的复杂类型的扩展
ISomething
{
string A { get; }
int B { get; }
}
var somethings = new List<ISomething>();
something.Add(new SomethingSomething());
something.Add(new AnotherSomething());
something.Add(new AnythingSomething());
基本上我想要的元素序列被命名为任何他们只要它们的复杂类型是我定义的复杂类型的扩展。
因此,它可能看起来像:
<somethings>
<something-something a="foo" b="0" />
<another-something a="bar" b="1" />
<example:anything-something a="baz" b="2" />
</somethings>
我敢肯定,这是可能的,我猜是替代组成,在那里我有一个可以包含一个子标准的元素是至少一个'Something'..
在此先感谢,xsd不是我的强项。
编辑,好到目前为止,我已经找到了最接近的事基本上是:
<somethings>
<something xsi:type="something-something" a="foo" b="0" />
<something xsi:type="another-something" a="bar" b="1" />
<something xsi:type="example:anything-something" a="baz" b="2" />
</somethings>
我想这是这个被处理的唯一途径?如果是这样,这不是很糟糕,而vs intellisense似乎已经很好地理解了这一点。
谢谢。
感谢您确认这一点,我猜元素和类型在XML中更加明显,所以我们都来到的版本可能是做这种事情的预期方式..再次感谢 – meandmycode