JavaWeb——XML

介绍

  约束:规定xml文档的书写规则

规定者编写xml约束,定义标签和属性。

 

分类

  1.DTD:一种简单的约束技术

  2.Schema:复杂的约束技术

  

1.DTD文档

  <!ELEMENT students (student * ) >

  <!ELEMENT sutdent (name , age , sex)>

  <!ELEMENT name (#PCDATA)>

  <!ELEMENT age (#PCDATA)>

  <!ELEMENT sex (#PCDATA)>

  <!ATTLIST student number ID #REQUIRED>

 

解析

  ELEMENT:定义标签

  ATTLIST:定义属性

 

  <!ELEMENT 标签名  (子标签名  , 子标签名,子标签名 ..... [ * ] )  >

  定义标签 标签名 (子标签名 [数量] )

 

  <!ELEMENT 标签名 (#PCDATA)>

  #PCDATA :字符串

  

  <!ATTLIST  标签名 属性名 属性类型 #REQUIRED>

  <!ATTLIST student number ID #REQUIRED>

  给student标签添加属性,number id类型 必须有

 

  简单记忆:<!ELEMENT 标签名 (子标签或者值类型)> 

          <!ATTLIST 标签名 属性名 属性类型 约束>

引入

  1.内部data:不常用

  2.外部data:将约束的规则定义在外部的dtd文件中

    本地:<!DOCTYPE 跟标签名 SYSTEM “dtd文件的位置”>

    网络:<!DOCTYPE  根标签名 PUBLIC "dtd文件名字" "dtd文件的位置URL">

  

使用

  

// dtd
<!ELEMENT students (student *)>
<!ELEMENT student (name,age ,sex)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)>
<!ATTLIST student number ID #REQUIRED>


// xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE students SYSTEM "student.dtd">

<students>
    <student number="s001">
        <name>陈威</name>
        <age>22</age>
        <sex>男</sex>
    </student>

    <student number="s002">
        <name>张树</name>
        <age>20</age>
        <sex>男</sex>
    </student>
</students>

 

2.Schema

  更复杂的xml约束,比dtd能做到内容的限定( 约束后缀名 .xsd)

  

 

上一篇:EntityResolver解析


下一篇:Useful NumPy functions: Reshape, Argpartition, Clip, Extract, Setdiff1d