当前位置:文档之家› XML书后习题答案

XML书后习题答案

3.XML文件的分类:无效的XML文档、格式良好的XML文档、有效的XML文档4.XML文件的逻辑构成,并简述各部分内容逻辑构成包括:(1)XML必要声明(2)DTD声明(3)PI(处理指令)(4)元素(5)注释1) XML必要声明语法:<? ?>位置:必须位于第一行可以包含的属性及含义version 必须的XML版本 1.0|1.1encoding 可选的编码方式standalone 可选的XML文档是否独立yes|no2)DTD声明语法:<!DOCTYPE ....>内置的DTD声明1)PI语法:<? ?>位置:通常位于第一个元素之前如果需要使用的时候给出,否则不写PI vs xml必要声明的相同点和不同点?(1)位置(2)出现次数(3)作用4)注释语法:<!-- -->需要注意的问题:1)不能位于必要声明之前2)不能嵌套在标记中3)本身不能嵌套4)中间内容不能出现--5)不能以--->5)元素分类:空元素、带属性的、带内容的、带内容且带属性的习题2答案1. 分为3种方式:1)内部DTD<!DOCTYPE 根元素名称[元素描述]>2)外部DTD:外部DTD的引用须事先已有一个dtd文件,将DTD的约束写到文件中,然后在XML文档中按以下语法格式添加:<!DOCTYPE (根元素名称) SYSTEM “外部DTD的URL地址”>SYSTEM关键字表示文档使用的是私有DTD文件,“外部DTD文件的URI”可以是相对URI或者绝对URI,相对URI是相对于文档类型声明所在文档的位置。

“外部DTD文件的URI”这部分也被称为系统标识符(system identifier)。

3)公用DTD:公用DTD与外部DTD类似,但是该DTD引用公用的DTD的语法格式如下:<!DOCTYPE (根元素名称) PUBLIC “DTD的标识名”“公用DTD的URL地址”>2. DTD划分的元素类型及其含义3.属性类型及其含义习题3答案1. <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE class [<!ELEMENT class (aa:major,students)*><!ELEMENT aa:major (aa:name)*><!ELEMENT aa:name (#PCDA TA)><!ELEMENT students (bb:student)*><!ELEMENT bb:student (bb:name+,bb:age+)><!ELEMENT bb:name (#PCDA TA)><!ELEMENT bb:age (#PCDA TA)><!ATTLIST class xmlns:aa CDATA #REQUIREDxmlns:bb CDA TA #REQUIREDxmlns CDATA #REQUIRED><!ATTLIST bb:studentsn CDA TA #REQUIRED>]><class xmlns:aa="/xml/major" xmlns:bb="/xml/student"xmlns="/xml"><aa:major><aa:name>软件工程</aa:name></aa:major><students><bb:student sn="01"><bb:name>张三</bb:name><bb:age>18</bb:age></bb:student><bb:student sn="02"><bb:name>李四</bb:name><bb:age>120</bb:age></bb:student></students></class>2. <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE library [<!ELEMENT library (books,records)*><!ELEMENT books (book*)><!ELEMENT book (#PCDA TA)><!ATTLIST book aa:bookid CDA TA #REQUIRED><!ELEMENT records (item*)><!ELEMENT item (date+,person+)><!ELEMENT date (#PCDA TA)><!ELEMENT person (#PCDA TA)><!ATTLIST person bb:name CDATA #REQUIRED><!ATTLIST person borrowed CDATA #REQUIRED><!ATTLIST library xmlns:aa CDATA #REQUIRED xmlns:bb CDA TA #REQUIRED>]><library xmlns:aa="/xml/book" xmlns:bb="/xml/record"><books><book aa:bookid="b-1-1">XML详解</book><book aa:bookid="b-1-2">Servlet从入门到精通</book><book aa:bookid="b-1-3">JSP实例编程</book></books><records><item><date>2012-08-01</date><person bb:name="张三" borrowed="b-1-1 b-1-2"/></item><item><date>2012-08-02</date><person bb:name="李四" borrowed="b-1-1 b-1-3"/></item></records></library>习题4 答案1.<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"><xs:element name="学生名册"><xs:complexType><xs:sequence minOccurs="1" maxOccurs="unbounded"><xs:element name="学生" type="studenttype"/></xs:sequence></xs:complexType></xs:element><xs:complexType name="studenttype"><xs:sequence><xs:element name="姓名" type="xs:string"/><xs:element name="性别"><xs:simpleType><xs:restriction base="xs:string"><xs:enumeration value="男"/><xs:enumeration value="女"/></xs:restriction></xs:simpleType></xs:element><xs:element name="年龄"><xs:simpleType><xs:restriction base="xs:integer"><xs:minExclusive value="0"/><xs:maxExclusive value="100"/></xs:restriction></xs:simpleType></xs:element></xs:sequence><xs:attribute name="学号" type="xs:integer"/></xs:complexType></xs:schema>2. <?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"><xs:simpleType name="bookIDType"><xs:restriction base="xs:string"><xs:pattern value="b-\d{1}-\d{1}"/></xs:restriction></xs:simpleType><xs:element name="book"><xs:complexType><xs:simpleContent><xs:extension base="xs:string"><xs:attribute name="bookid" type="bookIDType"></xs:attribute></xs:extension></xs:simpleContent></xs:complexType></xs:element><xs:element name="books"><xs:complexType><xs:sequence maxOccurs="unbounded"><xs:element ref="book"></xs:element></xs:sequence></xs:complexType></xs:element><xs:element name="person" nillable="true"><xs:complexType ><xs:simpleContent><xs:extension base="xs:string"><xs:attribute name="name" type="xs:string"></xs:attribute><xs:attribute name="borrowed"><xs:simpleType><xs:list itemType="bookIDType"></xs:list></xs:simpleType></xs:attribute></xs:extension></xs:simpleContent></xs:complexType></xs:element><xs:element name="item"><xs:complexType><xs:sequence><xs:element name="date" type="xs:date"></xs:element><xs:element ref="person"></xs:element></xs:sequence></xs:complexType></xs:element><xs:element name="records"><xs:complexType><xs:sequence maxOccurs="unbounded"><xs:element ref="item"></xs:element></xs:sequence></xs:complexType></xs:element><xs:element name="library"><xs:complexType><xs:sequence><xs:element ref="books"></xs:element><xs:element ref="records"></xs:element></xs:sequence></xs:complexType></xs:element></xs:schema>习题5答案1. <?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" targetNamespace="/xml/ns/javaee"xmlns="/xml/ns/javaee"><xs:element name="welcome-file-list"><xs:complexType><xs:sequence><xs:element name="welcome-file" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence></xs:complexType></xs:element><xs:element name="servlet"><xs:complexType><xs:sequence><xs:element name="description" type="xs:string" minOccurs="0"maxOccurs="1"></xs:element><xs:element name="display-name" type="xs:string" minOccurs="0" maxOccurs="1"></xs:element><xs:element name="servlet-name" type="xs:string" minOccurs="1" maxOccurs="1"></xs:element><xs:element name="servlet-class" type="xs:string" minOccurs="1" maxOccurs="1"></xs:element></xs:sequence></xs:complexType></xs:element><xs:element name="servlet-mapping"><xs:complexType><xs:sequence><xs:element name="servlet-name" type="xs:string" minOccurs="1" maxOccurs="1"></xs:element><xs:element name="url-pattern" minOccurs="1" maxOccurs="1"><xs:simpleType><xs:restriction base="xs:string"><xs:pattern value="/[a-zA-Z/.]+"/></xs:restriction></xs:simpleType></xs:element></xs:sequence></xs:complexType></xs:element><xs:element name="listener"><xs:complexType><xs:sequence><xs:element name="listener-class" type="xs:string"/></xs:sequence></xs:complexType></xs:element><xs:element name="web-app"><xs:complexType><xs:sequence><xs:element name="display-name" type="xs:string" minOccurs="0" maxOccurs="1"></xs:element><xs:element ref="welcome-file-list"/><xs:choice minOccurs="1" maxOccurs="unbounded"><xs:element ref="servlet"/><xs:element ref="servlet-mapping"/><xs:element ref="listener"/></xs:choice></xs:sequence><xs:attribute name="id" type="xs:string"/><xs:attribute name="version"><xs:simpleType><xs:restriction base="xs:float"><xs:enumeration value="2.5"></xs:enumeration><xs:enumeration value="2.4"></xs:enumeration><xs:enumeration value="2.3"></xs:enumeration></xs:restriction></xs:simpleType></xs:attribute></xs:complexType></xs:element></xs:schema>习题6答案1.css:级联式样式表、XSL:可扩展样式单语言。

相关主题