XML学习总结

一、XML的概念

 Extensible Markup Language,翻译过来为可扩展标记语言。XML的主要数用于处理生活中的有关系的数据。比如 中国包括了北京,北京有海淀区,西城区,这样的关系。


    <中国>
        <北京>
            <海淀区>

            

            <东城区>

            
        
    

XML还有一个任务是,与properties配置文件有相同的功能,他可以用作软件的配置文件,比如在一个软件系统中,我们要启动这个软件系统,它是由 A B两个模块来决定,然后 A B模块又分别有 a,b,c登模块,这样使用XML文件就可以很好的描述这样的关系。

tips:XML文件主要是为了传输数据,而不是显示数据

二、XML的语法

一个XML文件由下面几个部分组成:

--文档声明
--元素
--属性
--注释
--CDATA区特殊字符
--处理语句

tips:XML文件保存的格式要注意编码格式,默认的编码格式是ascii码,注意调整。

1、格式良好的XML

1、一个xml文件应该只有一个根元素标签
2、一个标签应该有有开始标签和结束标签   
3、标签应该有合理的嵌套模式   error:
哈哈
4、在XML文件中应该尽量减少属性的引用,如果要表达信息的话,还是最好使用子元素来表示,属性的扩展性不是太好。
5、XML文件应该严格的区分大小写

tips:

预定义的实体引用:

< < 小于
> > 大于
& & 和号
' ' 单引号
" " 引号
//文档声明  版本号,编码格式
//根元素只有一个
	//声明子元素,id声明子元素的属性
		Luther//声明子元素,
		Java<//tips:在xml文件中只有&和<是非法的但是还是应该使用预定义实体来规范
		89
	
	
		ANan
		JAVA&gt
		100
	

2、有效的XML文件

合法的 XML 文档是“形式良好”的 XML 文档,同样必须遵守文档类型定义 (DTD) 的语法规则
2.1 DTD的简单学习:

内部DTD:


           //!ELEMENT定义scores根元素有多个或者一个student元素 +一个或者多个 ?一个或者0个 *0个或者多个
// !ELEMENt   定义student有name,course,score三个子元素
 //!ATTLIST 声明student元素的属性,并且是CDATA 和REQUIRED的
//!ELEMENT 可以想象为name之间有文本数据


]>

	
		Luther
		Java
		89
	
	
		ANan
		JAVA
		100
	

PCDATA:

PCDATA 的意思是被解析的字符数据(parsed character data)。

可把字符数据想象为 XML 元素的开始标签与结束标签之间的文本。

PCDATA 是会被解析器解析的文本。这些文本将被解析器检查实体以及标记。

文本中的标签会被当作标记来处理,而实体会被展开。

不过,被解析的字符数据不应当包含任何 &、< 或者 > 字符;需要使用 &、< 以及 > 实体来分别替换它们。

CDATA

CDATA 的意思是字符数据(character data)。

CDATA 是不会被解析器解析的文本。在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开,就是对于CDATA区域内的内容,XML解析程序不会处理,而是直接原封不动的输出

外部的DTD文件:




 


引入外部DTD:


//SYSTEM表示的是引入本地的DTD文件,并且声明根元素


	
		Luther
		Java
		89
	
	
		ANan
		JAVA
		100
	






  这个是引入Mybaits的DTD的格式

 

你可能感兴趣的:(XML基础学习)