1.声明

<?xml version="1.0"  encoding=“gb2312"?>

version属性
指定该文档遵守的版本号,通常为1.0
XML声明中必需指定version属性

encoding属性
指定编码格式,代表对XML文档进行解码时所用的字符集
该属性为可选项,如果没有指定encoding属性,默认采用UTF-8编码格式
几种常用的编码格式:
简体中文:GB2312或GBK
繁体中文:BIG5
通用的国际编码:Unicode

standalone属性
指定该文档是否需要引用其他资源
该属性合法的取值:yes或no
该属性为可选项

2.元素
XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。
元素可包含其他子元素、文本或者两者的混合。元素也可以拥有属性

元素命名规则
名称可以含字母、数字以及其他的字符,不能包含<、>、,和$等符号
名称不能以数字、中划线和标点符号开始
名称不能以字符 “xml”(或者 XML、Xml)开始
名称不能包含空格
尽量不要出现英文冒号”:”,除非是在使用命名空间

空元素:没有子元素也没有元素内容

<school></school>

<school/>

元素标签大小写敏感

3.实体引用
为了避免发生以上错误,需要用实体引用来代替 这些特殊 字符
解析器在解析这些内容时,会进行正确的转换

实体

描述

字符

&lt;

小于号

<

&gt;

大于号

>

&quot;

双引号

"

&apos;

单引号

'

&amp;

and

&

4.CDATA

不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)
某些文本,比如 JavaScript 代码,包含大量 “<” 或 “&” 字符。为了避免错误,可以将这部分代码放入CDATA中,解析器会忽略CDATA中的内容。
CDATA 语法:由 “<![CDATA[” 开始,由 “]]>” 结束

注释:CDATA 部分不能包含字符串 “]]>”;也不允许嵌套的 CDATA 部分;结尾的 "]]>" 不能包含空格或折行

5.注释
XML文档中可以添加注释,注释中的字符串不会被XML解析器处理
在 XML 中编写注释的语法与 HTML 的语法很相似:

<!-- This is a comment -->

不要把注释放在标签之内
注释中可以包含标签和元素,但一定要保证删除注释后,剩下的内容满足XML的语法规则
不要把注释放在XML声明之前

6.处理指令(ProcessingInstructions, PI)
在XML文档中,有可能包含一些非XML格式的数据(如:样式表),这些数据XML处理器无法处理,需要通过处理指令来告诉其他应用程序如何处理文档中的这些数据
处理指令必须以<?开始,以?>结束

<?处理指令名  处理指令信息?>

开发者可以定义任意的处理指令,但需要自己写程序来处理该指令,使该指令生效
不同的应用程序支持不同的处理指令,应用程序从处理指令中取得目标和数据,执行要求的动作
常见处理指令“xml-stylesheet”:通知XML解析引擎,应用后面指定的css文件显示xml文档中的数据内容,该指令总是放在XML声明之后,第一个元素之前

<?xml-stylesheet  href="hello.css"  type="text/css"?>

注意:XML声明不是处理指令,XML处理程序对XML声明和处理指令采取的是不同的处理方式

XML学习总结一的更多相关文章

  1. XML 学习介绍 收藏

    XML学习总结(一)——XML介绍 一.XML概念 Extensible Markup Language,翻译过来为可扩展标记语言.Xml技术是w3c组织发布的,目前推荐遵循的是W3C组织于2000发 ...

  2. XML学习笔记

    XML学习笔记 第一部分:XML简介 我们经常可以听到XML.HTML.XHTML这些语言,后两者比较清楚,一直不是很明白XML是什么,这里做一个总结. XML(eXtensible Markup L ...

  3. SQL SERVER XML 学习总结

    SQL  SERVER  XML  学习总结 最新的项目任务要做一个数据同步的功能,这些天都在做技术准备,主要是用到了微软的Service Broker技术,在熟悉使用该技术的同时,又用到了Sql s ...

  4. XML学习笔记(2)--dom4j操作XML

    1. 介绍(四种方式的比较这部分转载自:http://www.blogjava.net/xcp/archive/2010/02/12/312617.html) 1)DOM(JAXP Crimson解析 ...

  5. XML学习笔记(1)--XML概述

    XML基本概念 XML—extensible Markup Language(可扩展标记语言) XML最基本的三个概念 1)XML语言---描述事物本身(可扩展) 2)XSL语言---展现事物表现形式 ...

  6. XML学习总结(二)——XML入门

    XML学习总结(二)——XML入门 一.XML语法学习 学习XML语法的目的就是编写XML 一个XML文件分为如下几部分内容: 文档声明 元素 属性 注释 CDATA区 .特殊字符 处理指令(proc ...

  7. XML学习教程

    XML学习进阶1-- 什么是XML. 为什么使用 XML?... 什么是 XML?... 数据的结构表示... XML 文档... 数据是从表示和处理中分离出来的... 使XML数据自描述... XM ...

  8. Robot framework--内置库xml学习(一)

    Using lxml By default this library uses Python's standard ElementTree module for parsing XML, but it ...

  9. Java第三阶段学习(十、XML学习)

    一.XML学习 1.模拟Servlet执行 在学习完前端及java与数据库后,将进行WEB编程阶段的学习.在WEB编程中,可以通过浏览器访问WEB服务器上的数据.这时WEB服务器就相当于另一台计算机. ...

  10. [python xml 学习篇][0]

    tree = ET.parse("Result.xml")root = tree.getroot()print type(root)print root.tag # 得到root ...

随机推荐

  1. Vue中的~(静态资源处理)

    Webpacked 资源 首先要理解webpack是怎样处理静态资源的. 在*.vue组件中,所有的templates和css都会被vue-html-loader 和 css-loader解析,寻找资 ...

  2. 我在Python学习中遇到的问题一

    开发工具:PyCharm 系统:macOs Serria 10.12.4 jetbrains出品,作为和idea一个公司的兄弟产品,延续了idea的易用性,并且操作按钮也基本一致 一. 执行环境问题 ...

  3. thinkphp 响应对象

    <?php namespace app\admin\controller; use think\Request; class Index{ public function index(Reque ...

  4. python requests库网页爬取小实例:百度/360搜索关键词提交

    百度/360搜索关键词提交全代码: #百度/360搜索关键词提交import requestskeyword='Python'try: #百度关键字 # kv={'wd':keyword} #360关 ...

  5. CSS网页布局

    注:优化样式表:增加css样式表的可读性 减伤样式重复 一.主要内容 1.布局分类;131   121 2.display属性排版 3.float属性排版(横向多列布局) 4.防止父类盒子塌陷 二.标 ...

  6. Yii2.0 解决“the requested URL was not found on this server”问题

    在你下了 Yii 框架,配置完路由 urlManager 后,路由访问页面会报错“the requested URL was not found on this server”,url类似于这种“ht ...

  7. SSL及使用openssl实现CA

    TLS如何实现各种功能?数据如何加密在网络上传输? 网景(Netscape)公司在应用层和传输层加入了半层,把这个半层称之为SSL,SSL不是软件,可以理解是一个库,当http交给tcp层之前先通过s ...

  8. form表单上传图片文件

    import os def upload(request): if request.method == 'GET': img_list = models.Img.objects.all() retur ...

  9. Linux 查看网络状态工具

    1. iftop 效果如下图: 界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的. 中间的<= =>这两个左右箭头,表示的是流量的方向. TX:发送流量RX:接收流量T ...

  10. openwrt添加自动启动项

    在/etc/init.d下添加文件my-plugin #!/bin/sh /etc/rc.common # /etc/init.d/my-plugin start() { sh /root/useri ...