Javaweb 实验4 xml

我发现了有些人喜欢静静看博客不聊天呐,

但是ta会点赞。

这样的人呢帅气低调有内涵,

美丽大方很优雅。

说的就是你,

不用再怀疑哦

实验四 XML

目的:

  1. 安装和使用XML的开发环境
  2. 认识XML的不同类型
  3. 掌握XML文档的基本语法
  4. 了解DTD的作用
  5. 掌握DTD的语法
  6. 掌握Schema的语法

实验过程:

  1. 安装XML的编辑器,可以选择以下之一
    1. XMLSpy
    2. VScode,Vscode中安装XML插件
  1. 给定一个XML文档test.xml

<?xml version="1.0"?>

<students>

<student id="001">

<name>tom</name>

<age>24</age>

<major>

<course cid="c1">Python</course>

</major>

<phone>18611111111</phone>

<phone>18622222222</phone>

</student>

<student id="002">

<name>sammy</name>

<age>25</age>

<major>

<course cid="c2">C++</course>

<course cid="c3">computer principle</course>

</major>

<phone>18633333333</phone>

</student>

</students>

  1. 为test.xml定义一个内部的DTD,写出完整的xml文档

代码:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE students [

<!ELEMENT students (student+)>

<!ELEMENT student (name, age, major, phone+)>

<!ATTLIST student id CDATA #REQUIRED>

<!ELEMENT name (#PCDATA)>

<!ELEMENT age (#PCDATA)>

<!ELEMENT major (course+)>

<!ELEMENT course (#PCDATA)>

<!ATTLIST course cid CDATA #REQUIRED>

<!ELEMENT phone (#PCDATA)>

]>

<students>

<student id="001">

<name>tom</name>

<age>24</age>

<major>

<course cid="c1">Python</course>

</major>

<phone>18611111111</phone>

<phone>18622222222</phone>

</student>

<student id="002">

<name>sammy</name>

<age>25</age>

<major>

<course cid="c2">C++</course>

<course cid="c3">computer principle</course>

</major>

<phone>18633333333</phone>

</student>

</students>

  1. 为test.xml定义一个外部的Schema文档,写出schema文档和使用schema文档后的test.xml

Text.xml

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<students xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="test.xsd">
    <student id="001">
        <name>tom</name>
        <age>24</age>
        <major>
            <course cid="c1">Python</course>
        </major>
        <phone>18611111111</phone>
        <phone>18622222222</phone>
    </student>
    <student id="002">
        <name>sammy</name>
        <age>25</age>
        <major>
            <course cid="c2">C++</course>
            <course cid="c3">computer principle</course>
        </major>
        <phone>18633333333</phone>
    </student>
</students>

Text.xsd

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="students">

<xs:complexType>

<xs:sequence>

<xs:element name="student" maxOccurs="unbounded">

<xs:complexType>

<xs:sequence>

<xs:element name="name" type="xs:string"/>

<xs:element name="age" type="xs:integer"/>

<xs:element name="major">

<xs:complexType>

<xs:sequence>

<xs:element name="course" maxOccurs="unbounded">

<xs:complexType>

<xs:simpleContent>

<xs:extension base="xs:string">

<xs:attribute name="cid" type="xs:string" use="required"/>

</xs:extension>

</xs:simpleContent>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:element name="phone" type="xs:string" maxOccurs="unbounded"/>

</xs:sequence>

<xs:attribute name="id" type="xs:string" use="required"/>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

相关推荐
执明wa10 天前
Android RecyclerView 多类型, 多种 Item
android·xml·开发语言·设计模式·android studio
wl851111 天前
SAP CPI 教程004 如何通过groovy修改XML节点属性值
xml
码匠许师傅12 天前
【C++三方组件】TinyXML2:两个文件的极简 XML 解析器
xml·c++
yuzhiboyouye13 天前
my-batisPlus什么时候用xml什么时候用mapper自带的方法,这两种写法专业一点叫什么,什么场景分别使用
xml
筝筝ba14 天前
如何跳过FFDC
xml·linux·运维·服务器·网络
yuzhiboyouye15 天前
那xml对应的sql语法,列举一下
xml·数据库·sql
筝筝ba20 天前
OpenBMC 自动化测试中的多进程陷阱:从 Execute Process 返回异常到 output.xml 损坏问题分析
xml·linux·运维·服务器·网络
spencer_tseng24 天前
[j2cache ehcache.xml]/tmp/.ehcache-diskstore.lock (Permission denied)
xml·linux·python·ehcache·[j2cache
DevOpenClub25 天前
PDF 多格式解析如何避免混用输出:TEXT、HTML、XML 与 TAG 数据契约
xml·前端·数据库·pdf·html
Java小白笔记1 个月前
MyBatis XML Mapper 标签与 CRUD 原理实战
xml·数据库·mybatis