`

XML知识点滴(3)

阅读更多

XML知识点滴(3)

(引用文章,版权归作者,如需删除请联系我)

 

XML声明

XML声明部分

含义

<?xml

XML声明的起始标记。

Version=”1.0”

版本声明。

Encoding=”gb2312”

编码声明。如果忽略编码声明,XML处理器将尝试使用UTF-8UTF-16Unicode编码规则解析文档。

standalone=”yes”

无依赖性声明。表示XML文档的内容以来外部信息(如DTD)。此声明部分可以忽略,使用此声明,必须写在XML声明的最后。

?>

XML声明的结束标记。

n         XML声明在文档中只能出现一次,且必须位于文档的第一行,前面不能有任何字符。

n         文件采用的编码方式要和XML的编码声明保持一致。

n         XML文档总是以一个XML声明开始,其中指明所用XML版本、文档的编码、文档的独立性信息。其格式如下:

              <?xml 版本信息 [编码信息] [文档独立性信息]?>

       中括号([])中的部分表示是可选信息。

n         版本声明<?xml version=”1.0”?>

n         文档编码声明

       XML声明中加上文档编码信息,默认是UTF-8,如果要使用中文,我们可以在声明  中加上encoding=gb2312,如下所示:

              <?xml version=”1.0” encoding=”gb2312”?>

n         独立文档声明

       如果我们的文档不依赖于外部文档,在XML声明中,我们可以通过standalone=yes来声明这个文档是独立的文档。如果文档以来于外部文档,可以通过standalone=no 来声明。完整的XML声明如下所示:

              <?xml version=”1.0” encoding=”gb2312” standalone=”yes”?>

 

文档类型声明

n         DTDDocument Type Definition)文档类型定义。

n         XMLSGML继承了用于定义语法规则的DTD机制,但DTD本身并不要求遵循XML规则,几乎所有的XML应用都是使用DTD来定义的。HTML就有一个标准的DTD文件,所有其组织结构和所有的标签都是固定的。DTD文件也是一个文本文件,通常用.dtd作为其扩展名。

n         通过文档类型声明,指出XML文档所用的DTD。文档类型声明有两种形式,一种是声明DTD在一个外部的文件中,如下:

              <!DOCTYPE greeting SYSTEM “hello.dtd”>

       一种是直接在XML文档中给出DTD,如下:

              <?xml version=”1.0” encoding=”gb2312” standalone=”yes”?>

              <!DOCTYPE greeting[<!ELEMENT greeting(#PCDATA)>]>

 

元素

n         元素(Element)是每个XML文档中不可或缺的部分。每个XML文档至少要有一个元素。

n         XML中,元素由开始标签(Start tag)、元素内容和结束标签(End tag)构成,对于空元素,由空元素标签构成。

n         在元素开始标签和结束标签之间的文本内容是元素的值。

n         如果一个元素的值为空字符串,也就是开始标签和结束标签之间没有内容,这种元素称为空元素(Empty element)。

n         结束标签和开始标签的大小写必须一致,因为XML是严格区分大小写的。

n         在元素标签左尖括号“<”后面必须紧跟元素名称,不能留有空白。结束标签名称前也不能留有空白。

n         每一个元素有一个用名字标识的类型,同时它可以有一个属性说明集,每一个属性说明有一个名字和一个值。

n         在给元素命名的时候要注意,以“xml”或其他任何匹配((‘X|x’)(M|m’)(‘L|l’))的字符串开头的名字,被保留用于XML规范的当前版本或后续版本的标准化。此外,在给元素命名时,还要遵循下列规范:

1)        名称只能以字符或下划线(_)开头。

2)        名称中可以包含字母、数字、下划线以及其他在XML标准中允许的字符。

3)        名称中不能包含空格。

4)        名称中尽可能不要使用冒号(:),因为冒号在名称空间中被用于分隔名称前缀和本地部分。

n         “元素”和“标签”这两个词具有不同的含义。元素是指开始标签、结束标签以及两者之间的一切内容,包括属性、文本、注释、以及子元素。标签是一对尖括号(<>)和两者之间的内容,包括元素名和所有属性。例如:<font color=blue>是一个标签,</font>也是一个标签;而<font color=blue>Hello World</font>则是一个元素。

 

元素的四种形式

n         空元素

              <student/>

n         带有属性的空元素

              <student name=张三 age=18/>

n         带有内容的元素

       <student>

              这是一个学生的信息

              <name>张三</name>

              <age>18</age>

       </student>

n         带有内容和属性的元素

       <student name=张三>

              <age>18</age>

       </student>

 

元素的内容构成

n         元素的内容可以包含子元素、字符数据、字符引用和实体引用、CDATA段。

n         当一个元素仅包含子元素,而没有文本内容时,称其有元素内容(Element content),如元素既包含子元素,又包含文本内容,则称其具有混合内容(Mixed content)。

 

根元素

n         不被其他元素包含的元素就是文档的根元素(Root element)。或称文档元素(Document element)。

n         一个文档必须有且只有一个根元素。

 

子元素

n         子元素本身也是元素,被嵌套在上层元素之内。子元素是相对于父元素而言的,如果子元素还嵌套了其他元素,那么它同时也是父元素。

              <students>

                     <student>

                            <name>张三</name>

                            <age>18</age>

                     </student>

              </students>

 

字符数据

n         在一个元素的内容中,字符数据可以是不包括任何标记的起始定界符和CDATA段的结束定界符的任意字符串,也就是说在元素内容中,字符数据不能有和号(&)和小于号(<),也不能有字符串“]]>”。

n         CDATA段中,字符数据可以是不包括CDATA段的结束定界符的任意字符串。

n         判断下列元素内容是否合法

              <data>&</data>           

              <data>/</data>             

              <data>/></data>           

              <data><</data>            

              <data>]]></data>         

分享到:
评论

相关推荐

    css 知识点滴 希望对你们有帮助

    ### CSS基础知识概览 #### CSS简介 CSS,全称为Cascading Style Sheets(层叠样式表),是一种用于定义HTML或XML文档中元素样式的语言。它使得网页设计者能够独立地控制网页的内容与表现形式,提高了网站开发的效率...

    Eclipse SWT开发点滴

    ### Eclipse SWT开发点滴 #### 一、第三方包的引用 在使用Eclipse进行SWT开发时,经常会遇到需要引入第三方库的情况。以下是引入第三方库的具体步骤: 1. **工程项目增加Libraries** - 右键点击项目 -&gt; `Build ...

    oracle知识點滴

    "Oracle知识点滴"显然是一份汇聚了关于Oracle数据库关键概念和技术的资料,适合Oracle用户进行学习和参考。以下是根据标题、描述以及文件名所推测的一些关键知识点: 1. **Oracle数据库架构**:Oracle数据库采用...

    梦颜时光记录点滴心情经历网站html源码源码资源下载整理.zip

    而“心梓知识”可能是指该源码包含了关于心理健康或情绪管理的知识分享,为用户提供更全面的服务。 总的来说,这份源码资源涵盖了前端网页开发的多个方面,从基础的HTML结构到复杂的JavaScript交互,再到可能涉及的...

    NoteBook笔记本,欢迎使用

    3. **日记**:暗示NoteBook可能有日记编写和管理的功能,适合记录个人生活或工作中的点滴。 4. **知识点管理**:说明NoteBook设计时考虑到了知识的分类、存储和检索,适合学习者或研究者使用。 5. **随笔**:可能有...

    NoteBook这个版本太旧了,用上面新的吧

    综合以上信息,我们可以得出NoteBook是一个具有笔记、日记、知识管理功能的软件,用户可以通过它来记录生活点滴、管理信息,并且可以自定义界面。它依赖于一些库文件如mfc42.dll和iconv.dll来实现其功能,并且使用...

    Java学习心得知识积累

    默认监听端口为8080,可通过修改`conf/server.xml`配置文件来更改。 #### 结语 Java的学习之路既漫长又充满乐趣,从理解JDK的基本构成到掌握应用服务器的配置,每一步都是对编程技能的提升。希望以上分享能够帮助...

    我的日记本—可参考

    【标题】"我的日记本—可参考"是一个安卓应用程序项目,旨在提供一个个人日记管理平台,用户可以在这里记录、编辑、删除和查找他们的日常生活点滴。这个项目作为一个安卓入门练习,涵盖了移动应用开发的基础知识,是...

    安卓Android源码——便签软件.zip

    在安卓(Android)平台上,开发一个便签应用是常见的任务,它可以帮助用户快速记录生活、工作中的点滴。本文将深入探讨“安卓Android源码——便签软件.zip”中包含的知识点,带你理解如何构建一个基本的便签应用。 ...

    QQ发表说说功能框的代码

    QQ发表说说功能框是QQ社交平台上的一个重要组成部分,它允许用户分享心情、想法或生活点滴,与好友进行互动。实现这一功能涉及到前端界面设计、后端数据处理以及用户交互等多个方面的技术。以下是对这个功能框背后的...

    最新2020程序员实习日记范文6篇.docx

    这篇文档包含了六篇程序员实习日记,记录了一位实习生在2020年期间学习和工作的点滴,主要涉及Java编程、开源框架、数据库管理和Web应用开发等主题。以下是这些日记中提炼出的重要知识点: 1. **Java编程框架**:...

    幸福就是现在作文(集合15篇).docx

    【部分内容】中的第一篇文章讲述了主人公在生活中感到忙碌和压力,但在生日那天得到了家人的惊喜,从而意识到幸福就存在于日常生活的点滴之中。第二篇文章通过与爷爷下棋的情景,展现了亲情的温暖和陪伴带来的幸福感...

    博客系统演示

    这种系统提供了一种便捷的方式,让人们能够分享思想、观点、专业知识或者生活点滴,无需深入学习编程技术。博客引擎是博客系统的核心组成部分,它负责处理用户的交互、内容管理、模板渲染和权限控制等功能。 在...

    Android随手记

    3. **活动(Activity)管理**:在Android中,活动是用户界面的入口点,每个屏幕对应一个活动。在这个应用中,可能有一个主活动负责显示记录列表,另一个活动用于新建或编辑记录。 4. **数据存储**:考虑到随手记...

    myBase-Desktop-Ver735-Setup.zip

    3. **模板系统**:预设或自定义模板,方便快速录入常见类型的笔记。 4. **搜索功能**:强大的全文搜索功能,即使在海量信息中也能快速定位所需内容。 5. **同步与备份**:支持本地和云同步,确保数据安全,方便多...

    WEB2.0论文

    例如,博客允许个人表达观点,分享生活点滴,而维基百科则让用户共同编写和编辑知识,实现了大规模协作的知识创作。 在技术层面,Web 2.0的实现离不开Ajax(Asynchronous JavaScript and XML)等技术的支持。Ajax...

    自己编写的Android记事本APP软件

    在Android平台上,开发一款记事本应用是一项基础且常见的任务,可以帮助用户记录日常生活中的点滴信息。这个名为"DateNote"的APP就是你自己使用Android Developer Tools(ADT)编写的成果,它展示了Android应用开发...

    简单的个人记事本APP

    【标题】"简单的个人记事本APP"是一个基于Android Studio开发的应用程序,旨在提供一个便捷的个人记事功能,让用户可以快速记录生活中的点滴、想法或待办事项。这款应用结合了基本的文本编辑功能与照相机权限的调用...

    Jishiben.rar_android_记事本Android

    在Android平台中,开发一款记事本应用程序是一项基础且实用的任务,它能够帮助用户记录生活中的点滴、工作中的想法或是学习笔记。本教程将深入探讨如何使用Android Studio进行记事本应用的开发,以"Jishiben.rar...

Global site tag (gtag.js) - Google Analytics