1. 关于xml格式定义
xml格式定义分为两部分:
- 申明
- 内容
大概格式定义如下:
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<ch>
<ch1>子节点1</ch1>
<ch2>子节点2</ch2>
<ch3>子节点3</ch3>
</ch>
</root>
-
<?xml
表示这是一个xml文档 -
version="1.0"
表示这里 遵循xml 1.0版本规范 -
encoding="UTF-8 "
表示使用编码规范,这里指定了读取规范.
说明:
如果我们使用非智能IDE工具编写xml文档,则需要注意保存的时候的编码格式,例如我们常常使用CTRL+S
保存文档,这里我们不指定编码系统采用默认编码格式保存,一般为ANSI
编码.则我们指定xml文档编码格式为UTF-8
这样中文就会产生乱码。所以我们应该使用另存为
手动指定编码与文档申明一致的编码格式。
如图:

2. xml约束文档
xml可以引用*.dtd
文件来约束xml文档节点。
dtd定义如下:
<!ELEMENT root (ch+)>
<!ELEMENT ch (ch1,ch2,ch3)>
<!ELEMENT ch1 (#PCDATA)>
<!ELEMENT ch2 (#PCDATA)>
<!ELEMENT ch3 (#PCDATA)>
xml做如下调整使用户编写xml文档受该规范约束.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE root SYSTEM "test.dtd">
<root>
<ch>
<ch1>子节点1</ch1>
<ch2>子节点2</ch2>
<ch3>子节点3</ch3>
</ch>
</root>
这样编码上述xml文档的时候自然就会被之前定义的test.dtd
约束了。
否则xml文档不能被正确解释。比如在智能IDE中会提示相应的非法内容。
经测试,在IDEA中 我们在*.dtd
中定义了多个节点,那么在*.xml
中定义超出[dtd文件]定义节点个数或者少于定义节点都会提示错误。如图:


---刚知道这个xml约束文档,学习了,然后记录下,以后遇到了有印象。有错误请大家指出。
网友评论