XML(Extendsible Markup Language)可扩展性标记性语言,拥有固定的语法格式,以标记的方式来表达信息。在java的开发中,常用来书写配置文件。相比于Properties文件做配置文件,在信息表达上XML更具有优势。Propertise文件只能以键值对的形式存在,无法表达值中再嵌套信息的情况,例如 著作 = 书名-作者-出版社,如果我们还想写更多有关书名、作者和出版社的更多信息,例如作者出生年月,国籍,性别等信息,将难以表达。而XML恰好可以利用多层嵌套标签来很好的解决这类问题,可以说JAVA中国最常用的两类配置文件:Propertise文件和XML文件,80%的情况我们都使用的后者。
无论是XML还是HTML(网页标记语言)都属于是标记语言,而所有的标记语言的基本语法都遵循GML(通用标记语言)的规定。
如下图所示:
在此之上,XML也有一些自生的特点:
1、标记名、标记之间的关系可以自定义。例如:自己可以定义一个名为<书籍></书籍>的标签。
2、严格的语法规范(满足即为合法的XML):
①有开始标记,必须要有结束标记,除非是单标记
②有且只有一个根标签
③正确的标记嵌套。
只有同时满足以上1、2两点才是有效的XML。
以下做一个XML的示例:
标记:
不能以数字和"_"(下划线)开头
不能以XML/Xml/xml....开头
名称中不能含空格和":"冒号
属性:
属性值不能包括<,>,&符号,要用" "或者' '分隔。
文本:
一些特殊符号需要使用实体符号替换。
实体 | 符号 |
< | < |
> | > |
& | & |
" | " |
' | ' |