XML Schema定义的每种类型都可以在CLS(.NET类型系统)中定义,反之亦然。
例如,如果我们在XML Schema中有xs:string
,则在.NET中我们有System.String
。如果我在C#中定义这个类:
public class Foo
{
public string Bar{get;set;}
}
<xs:complexType name="Foo">
<xs:sequence>
<xs:element name="Bar" type="xs:string" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
编号。
这个问题的意思是,CLS中的每个成员是否在XmlSchema中有对应的成员。
虽然有很多匹配但也存在不匹配的情况,因此答案是否定的——它们不是同构的。