XML:extensiable markup language 被称做可扩展标记语言css
XML简单的历史介绍:html
XML文件就解决了以上的问题了,若是使用XML描述上述图片的关系,是很是简单的!web
<?xml version="1.0" encoding="UTF-8" ?> <中国> <北京> <海淀></海淀> <丰台></丰台> </北京> <湖南> <长沙></长沙> <岳阳></岳阳> </湖南> <湖北> <武汉></武汉> <荆州></荆州> </湖北> </中国>
XML文件还能使用浏览器打开:数据库
咱们能够发现XML是能够描述很复杂的数据关系的浏览器
①:配置文件(例子:Tomcat的web.xml,server.xml……),XML可以很是清晰描述出程序之间的关系markdown
②:程序间数据的传输,XML的格式是通用的,可以减小交换数据时的复杂性!架构
③:充当小型数据库,若是咱们的数据有时候须要人工配置的,那么XML充当小型的数据库是个不错的选择,程序直接读取XML文件显然要比读取数据库要快呢!编码
XML被设计为“什么都不作”,XML数据或XML文档只用于组织、存储数据,除此以外的数据生成、读取、传送、存取等等操做都与XML自己无关!spa
因而乎,想要操做XML,就须要用到XML以外的技术了:设计
standalone–独立使用–默认是no。standalone表示该xml是否是独立的,若是是yes,则表示这个XML文档时独立的,不能引用外部的DTD规范文件;若是是no,则该XML文档不是独立的,表示能够引用外部的DTD规范文档。
正确的文档声明格式,属性的位置不能改变!
<?xml version="1.0" encoding="utf-8" standalone="no"?>
首先在这里说明一个概念:在XML中元素和标签指的是同一个东西!不要被不一样的名称所迷惑了!
元素中须要值得注意的地方:
看起来好像有不少须要值得注意的地方,其实只须要记住:XML的语法是规范的!不要随意乱写!
属性是做为XML元素中的一部分的,命名规范也是和XML元素同样的!
<!--属性名是name,属性值是china--> <中国 name="china"> </中国>
注释和HTML的注释是同样的
<!---->
在编写XML文件时,有些内容可能不想让解析引擎解析执行,而是看成原始内容处理。遇到此种状况,能够把这些内容放在CDATA区里,对于CDATA区域内的内容,XML解析程序不会处理,而是直接原封不动的输出
语法:
<![CDATA[ ...内容 ]]>
对于一些单个字符,若想显示其原始样式,也可使用转义的形式予以处理。
处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
例如:
在XML文档中可使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。
<?xml-stylesheet type="text/css" href="1.css"?>
<?xml version="1.0" encoding="UTF-8" ?> <?xml-stylesheet type="text/css" href="1.css"?> <china> <guangzhou> 广州 </guangzhou> <shenzhen> 深圳 </shenzhen> </china>
guangzhou{ font-size: 40px; }
①:JAXP(The Java API For XML Processing):主要负责解析XML
②:JAXB(Java Architecture for XML Binding):主要负责将XML映射为Java对象