`
pengcqu
  • 浏览: 774658 次
  • 性别: Icon_minigender_1
  • 来自: 未来
社区版块
存档分类
最新评论

XML的两种模式描述

阅读更多

在XML使用过程中,往往需要对XML的有效性进行验证。

 

只要不违反XML格式良好的规则,就可以自由选取标记的名字,用自己习惯的方式描述事物。这就意味着用XML描述相同的事物时,不同的编写者可能写出含有不同标记名、采用不同结构的XML文档,这对于数据的统一处理极为不利。所以需要一种机制指定应该如何构造描述同一事物的文档。DTD和XML Schema就是使用最为广泛的用来进行XML文档有效性验证的两种机制[16]17]。

DTD(Document Type Definition,文档类型定义)是一套关于标记符的语法规则,详细描述一组XML文档的结构,最初是为SGML开发的,它可以是XML文档的一部分,但是它通常是一份单独的文档或者一系列文档。DTD说明在文档中可以使用哪些标记,哪些标记可以出现在其它标记中,哪些标记具有属性,使用的标记应按什么顺序出现等。XML本身并没有一个通用的DTD,想使用XML进行数据交换的行业或组织可以自行定义它们自己的DTD,DTD规定了一个语法分析器用于解释一个“有效的”XML文档所需要知识的所有规则的细节。一个DTD可以是内部的,包含在一个“格式良好”的XML文档中,也可以是外部的,作为一个外部文档被引用。DTD标记声明可以是元素类型声明,属性声明,实体声明,或符号声明。作为XML1.0规范的重要组成部分,DTD对于XML文档的结构起到很好的描述作用,是近几年来XML技术领域所使用的最广泛的一种用于XML文档有效性验证的机制。

随着XML技术的广泛使用,DTD也逐渐显出其自身的一些不足与缺点,比如采用了非XML的语法规则,不支持多种多样的数据类型,扩展性较差,不支持名称空间等等。于是,W3C于2001年5月正式推荐XML Schema作为XML的标准模式。XML Schema本身就是一个符合XML语法结构的XML文档,可以用通用的XML解析器进行解析。它如同DTD一样,负责定义和描述XML文档的结构和内容模式。XML Schema可以定义XML文档中存在哪些元素和元素之间的关系,并且可以定义元素和属性的数据类型。


与DTD相比,XML Schema具有以下一些优点:
①一致性。Schema本身就是XML文档,使得对XML的定义不必再利用一种特定的形式化语言,而是直接借助XML自身的特性,使得XML达到从内到外的完美统一。
②扩展性。Schema对DTD进行了扩充,从而使其具有较强的可扩展性,比如引入了数据类型、命名空间等。
③互换性。用户可以根据需要设计适合自己应用的Schema,并且可以同其他人交换彼此的Schema。通过映射机制,可以将不同的Schema进行转换,实现更高层次的数据交换。
④规范性。同DTD一样,Schema也提供了一套完整的机制以约束XML文档中标记的使用,相比之下,Schema更具规范化,它定义了XML文档的整体结构,元素间的关系等。


总的来说,不能简单的评价DTD与XML Schema哪一个绝对好。它们各有各自的应用场合。相对于DTD,XML Schema可应用的范围更广一些。

分享到:
评论
1 楼 xici_magic 2009-10-18  
无疑  在开发中 Schema用的更多一些

相关推荐

    白色大气风格的建筑商业网站模板下载.rar

    白色大气风格的建筑商业网站模板下载.rar

    面向对象编程语言Objective-C基础语法详解及应用

    内容概要:本文详细介绍了面向对象编程语言Objective-C的基础语法,包括其历史背景、特点、环境搭建、基本语法、面向对象编程、高级特性和实际应用。具体涵盖的内容包括Objective-C的历史发展、面向对象编程的核心特性、变量和数据类型、控制结构、函数、数组和字典的使用,以及类、对象、属性和方法的定义与使用。此外,还介绍了高级特性如协议和委托、类别和扩展、ARC、块和GCD。最后,通过示例项目展示了如何在Xcode中创建和调试Objective-C程序,以及如何使用Cocoa和Cocoa Touch框架。 适合人群:具备一定的编程基础,希望学习或深入了解Objective-C编程的开发人员。 使用场景及目标:适用于需要开发macOS和iOS应用的开发者,帮助他们掌握Objective-C的基本语法和高级特性,提高编程效率和代码质量。 其他说明:本文不仅提供了详细的理论讲解,还通过实际代码示例展示了如何在Xcode中创建和调试Objective-C项目,适合初级到中级水平的开发人员学习和参考。

    球馆预约系统ssm.zip

    本次开发的微信小程球馆预约系统,有管理员,用户两个角色。管理员功能有个人中心,用户管理,场地类型管理,球馆信息管理,球馆预约管理,系统管理。用户可以在微信小程序上面注册登录,查看球馆信息,对球馆进行预约操作。 开发本程序后台用到了SSM开发技术,微信端用的是uni-app技术。数据库采用关系数据库市场占有率最高的MySQL作为本程序使用的数据库,完全符合程序使用并且有丰富的拓展余地。 用户在微信小程序注册登录后可以看到首页,首页可以搜索球馆名称,也可以查看球馆资讯,下面是导航栏。 用户点击球馆信息可以进行预约,预约需要输入相关时间等信息。 我的里面可以修改个人信息,可以退出,还可以查看球馆预约信息和我的收藏信息。

    STM32F030单片机串口2发送接收.zip

    1、嵌入式物联网单片机项目开发例程,简单、方便、好用,节省开发时间。 2、代码使用KEIL 标准库开发,当前在STM32F030C8T6运行,如果是STM32F030其他型号芯片,依然适用,请自行更改KEIL芯片型号以及FLASH容量即可。 3、软件下载时,请注意keil选择项是jlink还是stlink。 4、有偿指导v:wulianjishu666; 5、如果接入其他传感器,请查看账号发布的其他资料。 6、单片机与模块的接线,在代码当中均有定义,请自行对照。 7、若硬件有差异,请根据自身情况调整代码,程序仅供参考学习。 8、代码有注释说明,请耐心阅读。 9、编译时请注意提示,请选择合适的编译器版本。

    廖鹏盛 - 时代进行曲.zip

    廖鹏盛 - 时代进行曲.zip

    白色大气风格的人体艺术摄影网站模板下载.zip

    白色大气风格的人体艺术摄影网站模板下载.zip

    白色大气风格的服装设计师模板下载.zip

    白色大气风格的服装设计师模板下载.zip

    白色大气风格的景观设计HTML网站模板.zip

    白色大气风格的景观设计HTML网站模板.zip

    (176226648)机器学习领域,基于TensorFlow与mnist数据集,实现手写数字识别,手写数字识别,机器学习学习首选项目

    优质的机器学习资源是当今科技领域的热点,其中TensorFlow作为谷歌公司的开源库,成为最受欢迎的深度学习框架之一,广泛应用于各类项目中。TensorFlow提供了丰富的功能和灵活性,使得开发者可以轻松构建和训练复杂的神经网络模型,处理图像、文本和其他类型的数据。由于其开源性质,拥有庞大的社区支持,用户可以放心使用,并从开源社区中获取宝贵的经验和资源。 mnist数据集是机器学习领域的经典数据集之一。它包含着大量的手写数字图像,供开发者用来训练和测试各种算法和模型。这个数据集的规模相对较小,因此对于绝大多数人来说,无论是数据的下载还是训练过程,都不会对电脑性能提出过高的要求。这使得mnist成为了理想的入门数据集,适合初学者探索和理解机器学习算法的基本原理。 结合Pygame与TensorFlow,你将能够为机器学习实验创建出图形化界面,以及实现交互式处理。Pygame是一款面向游戏和多媒体应用的Python库,但同样也可以用于数据可视化和图形化交互。利用Pygame,你可以展示训练过程中的图像输出、模型的预测结果等,增强对机器学习算法运行情况的直观认识。而且,Pygame的简单。内

    基于两种坐标系的超螺旋滑模观测器的永磁同步电机pmsm无位置(速度)传感器控制模型 支持 dq旋转坐标系和静止坐标系建立smo 引入二阶滑模超螺旋算法替代一阶滑模 dq坐标系引入锁相环PLL估计转速及

    基于两种坐标系的超螺旋滑模观测器的永磁同步电机pmsm无位置(速度)传感器控制模型 支持 dq旋转坐标系和静止坐标系建立smo 引入二阶滑模超螺旋算法替代一阶滑模 dq坐标系引入锁相环PLL估计转速及转子位置 有效削弱抖振 赠送超螺旋滑模搭建推导文档及相关参考资料 仿真模型

    汇编实验算数运算程序设计.docx

    汇编实验算数运算程序设计.docx

    小区监控视频监控方案.doc

    小区监控视频监控方案.doc

    白色大气风格的HTML商务模板下载.zip

    白色大气风格的HTML商务模板下载.zip

    白色大气风格响应式运动健身瑜伽企业网站模板.zip

    白色大气风格响应式运动健身瑜伽企业网站模板.zip

    单片机实验仿真设计报告

    单片机实验仿真设计报告

    白色大气风格的设计公司整站网站模板下载.zip

    白色大气风格的设计公司整站网站模板下载.zip

    白色大气风格的html商务模板.zip

    白色大气风格的html商务模板.zip

    白色大气风格的英文网站模板下载.zip

    白色大气风格的英文网站模板下载.zip

    白色大气风格的科研教育模板下载.zip

    白色大气风格的科研教育模板下载.zip

    stm32驱动摄像头ov7670源程序

    本摄像头ov7670驱动程序已经通过本人的验证可以正常运行,不同的stm32开发板只需要修改引脚即可使用

Global site tag (gtag.js) - Google Analytics