XML__XML文档声明? ... ?中的standalone属性

2024-05-03 07:58

本文主要是介绍XML__XML文档声明? ... ?中的standalone属性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

standalone在XML里的作用

 今天在看用TdataSet生成的XML中第一行里有个standalone,不知道是什么意思,查了一下资料才知道它的作用,下面就把我了解的写下来。

    standalone  用来表示该文件是否呼叫其它外部的文件。若值是 ”yes” 表示没有呼叫外部文件,若值是 ”no” 则表示有呼叫外部文件。默认值是 “yes”。

    这里所指的外部文件其实就是查检XML是不是有效的约束文件,或是DTD或是Schema,那这两者又有什么区别呢?

    尽管XML1.0提供了一种机制,即文档类型定义(DTD)来规范XML的格式规则。但是它天生存在一些缺点,比如,它采用了非XML的语法规则、不支持更多的数据类型、扩展性差等,为了克服这些缺点,XML Schema 出现了。W3C推荐在XML中使用XML Schema来代替DTD。

    XML Schema(模式) 跟DTD一样,也用于定义 XML 文档的约束。但它与DTD明显不同的是,XML Schema遵循XML语法规则,更好地支持数据类型以及命名空间。W3C称:XML Schema is an XML based alternative to DTD。模式在单独的文件中定义,通常扩展名为 .xsd。每个模式定义都有一个根元素 schema,该元素属于名称空间。schema 元素可以包含可选的属性。

    比如:

    <xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema

    elementFormDefault="qualified" attributeFormDefault="unqualified">

    这表示模式中使用的元素来自名称空间。

    XML 文件使用 schema 名称空间中的 schemaLocation 属性链接到对应的模式。使用 schemaLocation 属性必须定义 schema 名称空间。所有这些定义都出现在 XML 文档的根元素中。

    语法如下:

    <root_element  schema_namespace_definition  schema_location_definition>

    下面是一个例子:

    <Books  xmlns:xs=" Books.xsd">

    先来看看一个XML文件示例(message.xml),分别用DTD和XML Schema 描述这个文件,看看它们之间的区别:

    1、使用DTD:

    <?xml version="1.0" standalone="yes"?>

    <!DOCTYPE message[

    <!ELEMENT message (to,from,body)>

    <!ELEMENT to      (#PCDATA)>

    <!ELEMENT from    (#PCDATA)>

    <!ELEMENT body    (#PCDATA)>

    ]>

    <message>

    <to>rose</to>

    <from>alex</from>

    <body>Hi,My Girl!</body>

    </message>

    2、使用XML Schema :

    message.xml:

    <?xml version="1.0" standalone="no"? >

    <message xmlns=http://www.example.com

    xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance

    xsi:schemaLocation=" message.xsd">

    <to>Rose</to>

    <from>Alex</from>

    <body>Hi,My Girl!</body>

    </message>

    message.xsd:

    <?xml version="1.0"?>

    <xs:schema xmlns:xs=http://www.w3.org/2001/XMLSchema

    targetNamespace=http://www.example.com

    xmlns="" elementFormDefault="qualified">

    <xs:element name="message">

    <xs:complexType>

    <xs:sequence>

    <xs:element name="to" type="xs:string"/>

    <xs:element name="from" type="xs:string"/>

    <xs:element name="body" type="xs:string"/>

    </xs:sequence>

    </xs:complexType>

    </xs:element>

    </xs:schema>

这篇关于XML__XML文档声明? ... ?中的standalone属性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/956231

相关文章

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

浅析CSS 中z - index属性的作用及在什么情况下会失效

《浅析CSS中z-index属性的作用及在什么情况下会失效》z-index属性用于控制元素的堆叠顺序,值越大,元素越显示在上层,它需要元素具有定位属性(如relative、absolute、fi... 目录1. z-index 属性的作用2. z-index 失效的情况2.1 元素没有定位属性2.2 元素处

SpringBoot中配置文件pom.xml的使用详解

《SpringBoot中配置文件pom.xml的使用详解》SpringBoot的pom.xml文件是Maven项目的核心配置文件,用于定义项目的依赖、插件、构建配置等信息,下面小编就来和大家详细介绍一... 目录1. 基本结构2. 关键部分详解2.1 <modelVersion>2.2 项目坐标2.3 <p

Java实现XML与JSON的互相转换详解

《Java实现XML与JSON的互相转换详解》这篇文章主要为大家详细介绍了如何使用Java实现XML与JSON的互相转换,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. XML转jsON1.1 代码目的1.2 代码实现2. JSON转XML3. JSON转XML并输出成指定的

Python实现合并与拆分多个PDF文档中的指定页

《Python实现合并与拆分多个PDF文档中的指定页》这篇文章主要为大家详细介绍了如何使用Python实现将多个PDF文档中的指定页合并生成新的PDF以及拆分PDF,感兴趣的小伙伴可以参考一下... 安装所需要的库pip install PyPDF2 -i https://pypi.tuna.tsingh

Maven pom.xml文件中build,plugin标签的使用小结

《Mavenpom.xml文件中build,plugin标签的使用小结》本文主要介绍了Mavenpom.xml文件中build,plugin标签的使用小结,文中通过示例代码介绍的非常详细,对大家的学... 目录<build> 标签Plugins插件<build> 标签<build> 标签是 pom.XML

HTML5 data-*自定义数据属性的示例代码

《HTML5data-*自定义数据属性的示例代码》HTML5的自定义数据属性(data-*)提供了一种标准化的方法在HTML元素上存储额外信息,可以通过JavaScript访问、修改和在CSS中使用... 目录引言基本概念使用自定义数据属性1. 在 html 中定义2. 通过 JavaScript 访问3.

CSS模拟 html 的 title 属性(鼠标悬浮显示提示文字效果)

《CSS模拟html的title属性(鼠标悬浮显示提示文字效果)》:本文主要介绍了如何使用CSS模拟HTML的title属性,通过鼠标悬浮显示提示文字效果,通过设置`.tipBox`和`.tipBox.tipContent`的样式,实现了提示内容的隐藏和显示,详细内容请阅读本文,希望能对你有所帮助... 效

Python批量调整Word文档中的字体、段落间距及格式

《Python批量调整Word文档中的字体、段落间距及格式》这篇文章主要为大家详细介绍了如何使用Python的docx库来批量处理Word文档,包括设置首行缩进、字体、字号、行间距、段落对齐方式等,需... 目录关键代码一级标题设置  正文设置完整代码运行结果最近关于批处理格式的问题我查了很多资料,但是都没