xml笔记之完整版(一)
好记性不如烂笔头,边学边忘记的我不得不承认,笔记是如此重要。最近学习了XML需要做个笔记,以便日后查看。xml的内容其实并不多,但是之前从未系统进行学习,以至于望而生畏。所以最近系统学习了一下,做个总结。
xml内容大致以下方面
1.XML及其语法。
2.XML约束之DTD XML约束之Schema (两种约束)。
3.XML编程(CRUD---Create Read Update Delete)。
4.三种xml 解析器 dom sax Dom4j。
依次进行讲述,按照编号分四次记录讲解。
1.什么是XML?
XML是指可扩展标记语言(eXtensible Markup Language),它是一种标记语言,类似HTML。
宗旨是表示数据,而非显示数据。
XML标签需要用户自行定义标签。
XML技术是W3C组织(World Wide Web Consortium万维网联盟)发布的,目前遵循的是W3C组织于2000年发布的XML1.0规范。
xml文件里的数据需要使用程序将其读出来即第4点提出的三种解析器,会在第四篇中进行讲解。
xml语言是一种通用的数据交换格式。
2.XML常见应用
用作数据的配置文件,如Java开发中,传统的配置文件是*.properties属性文件。
用作软件的配置文件,以描述程序模块之间的关系,如Struts2、Spring和Hibernate。
用作安卓中的界面布局文件
3.语法
文档声明: <?xml version=“1.0”?> <?xml version=“1.0” encoding=“utf-8”?>
元素:
一个标签分为起始和结束标签(不能省略)。
一个标签有如下几种书写形式: 包含标签主体:<mytag>some content</mytag> 不含标签主体:<mytag/> 一个标签中可以嵌套若干子标签,但所有标签必须合理的嵌套,不允许有交叉嵌套。 一个XML文档必须有且仅有一个根标签,其他标签都是这个根标签的子标签或孙标签。
命名规范:
一个XML元素可以包含字母、数字以及其它一些可见字符,但必须遵守下面的一些规范:
区分大小写,例如,<P>和<p>是两个不同的标记。
不能以数字或"_" (下划线)开头。 不能以xml(或XML、或Xml 等)开头。
不能包含空格。
名称中间不能包含冒号(:) (有特殊用途)。
属性
一个标签可以有多个属性,每个属性都有它自己的名称和取值,例如: <mytag name="value"/> 属性值一定要用双引号(")或单引号(‘)引起来
定义属性必须遵循与标签相同的命名规范 在XML技术中,标签属性所代表的信息,如果没有标签体,也可以被改成用子元素的形式来描述,例如:
<mytag> <name> <firstname> </firstnamename> <secondname> </secondname> </name> </mytag>
注释
<!--大段注释 …… --> 且 注释不能嵌套
CDATA区
CDATA是Character Data的缩写 作用:把标签当做普通文本内容; 语法:<![CDATA[内容]]> 如: <![CDATA[ <mytag>mytag</mytag> ]]>
特殊字符
特殊字符 处理指令(processing instruction) (PI)
处理指令,简称PI(Processing Instruction)。 作用:用来指挥软件如何解析XML文档。 语法:必须以“<?”作为开头,以“?>”作为结尾。
常用处理指令: XML声明:<?xml version=“1.0” encoding=“GB2312”?> xml-stylesheet指令: 作用:指示XML文档所使用的CSS样式XSL。
<?xml-stylesheet type=“text/css” href=“some.css”?> 注:对中文命名的标签元素不起作用.
第一部分到此为止,没多少代码,很容易看明白。