Are the type system represented by XmlSchema and the CLS isomorphic?

本文详细介绍了XmlSchema类型系统和CLS类型系统的概念及应用。XmlSchema定义了XML文档的数据类型标准,而CLS则是.NET语言遵循的一套数据类型规范。文章还探讨了这两种类型系统之间的相似性和差异。

这个问题比较模棱两可,首先要解释什么是XmlSchema类型系统,什么是CLS类型系统,和同构(isomorphic)都是什么意思。XmlSchema是一个特定的XML文档必须满足的一套标准。这些标准能够描述不同的数据类型。例如:一个XSD文件(XmlSchema的物理实例化)可能会有一个entry like。这意味着一个必须满足XSD文件架构的XML文件可能有一个entry like 21.33。xs:decimal是一种XmlSchema 数据类型。其他类型包括xs:Boolean,xs:Date,xs:int等等。

CLS是公共语言规范(Common Language Specification),它是任何.net 语言(C#,VB.net等)使用的一套数据类型。例如:一个C#程序可能有这么一行代码:

System.Doublepayrate=21.33;

System.Double是一种CLS数据类型。其他的包括System.Int32,System.Boolean等。

那什么是同构(isomorphic)呢?这是真正模棱两可的地方。同构可以不严谨地理解为“有相似的外表但不同的内在”,或者可以理解为“一对一的相似”。如果你将同构理解为有相似的外表,那么这道题的答案是“有点儿”。例如xs:Boolean 和System.Boolean相似。如果你将同构理解为“一对一的相似”那么这道题的答案仍然是“有点儿”。每一个XmlSchema类型都和CLS类型有那么一点相似,反之亦然。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值