xml语法
1、一个xml文档必须以一个【根目录标签】为开始,其他标签必须作为【根目录标签】的直接子标签或者间接子标签出现。
2、html标签对于英文字符大小是忽略不计,但是xml标签必须区分英文字母大小写
xml文档读取方式:
1、sax读取方式:根据开发人员需要,一次将若干个满足条件标签加载到内存中。
优点:可以节省内存。
缺点:如果读取大量标签信息时。运行效率相对较低。
2、dom读取方式:一次性将xml文档所的内容,加载到内存中
优点:如果读取大量标签信息时,此时由于是在内存中进行定位。所以运行速度较快。
缺点:浪费内存
3、实际开发过程中,一般都采用dom方式来读取
xml约束文档
1、xml约束文档的作用:
1)设置可以在当前xml文档声名的【标签类型名】
2)设置可以在标签中出现的【属性名】
3)设置标签之间父子关系和兄弟关系
2、xml约束文档分类:
1)DTD约束文档:简单约束文档
2)SCHEMA约束文档:高级约束文档
3、使用dtd约束文档
1)使用DTD前。必须导入目标文件:
<!DOCTYPE web-app SYSTEM "web-app_2_3.dtd">
2)<!ELEMENT 标签类型名>:声名可以在xml文档中出现标签类型名
3)<!ATTLIST 标签类型名 属性名>:声名可以在当前标签内部使用属性名称
4)<!ELEMENT 标签类型名 (子标签名?)>:子标签可以出现在父标签内部,也可以不出现。如果出现只能出现一次。
5)<!ELEMENT 标签类型名 (子标签名+)>:子标签必须出现在父标签中,并且可以出现多次;
6)<!ELEMENT 标签类型名 (#PCDATA)>:当前标签没有子标签
7)<!ELEMENT 标签类型名 (子标签名*)>:子标签可以出现在父类标签内部,也可以不出现,可以出现多次。
8)<!ELEMENT 标签类型名 (子标签名)>:子标签必须出现在父标签内部。且只能出现一次。
9)<!ELEMENT 标签类型名 ((子标签名|子标签名2))>:这两个标签必须出现一个,但不可同时出现;
<!ELEMENT web-app (servlet*,servlet-mapping,welcome-file-list?)>
<!ELEMENT servlet (servlet-name,description?,(servlet-class | jsp-file)>
<!ELEMENT servlet-mapping (servlet-name,url-pattern)>
<!ELEMENT servlet-name (#PCDATA)>
<!ELEMENT servlet-class (#PCDATA)>
<!ELEMENT url-patten (#PCDATA)>
<!ELEMENT welcome-file-list (welcome-file+)>
<!ELEMENT welcome-file (#PCDATA)>
<!ATTLIST web-app version CDATA #IMPLIED>