00 03Java Web开发之Schema:基于XML的DTD替代者

文章目录1 Schema的介绍2 Schema的开发过程3 Schema约束API查看4 sax解析的过程5 使用Schema的sax方式操作1 Schema的介绍2 Schema的开发过程3 Schema约束API查看4 sax解析的过程5 使用Schema的sax方式操作...
摘要由CSDN通过智能技术生成

1 Schema的介绍

dtd语法:<!ELEMENT 元素名称 约束>

schema符合xml语法,符合xml语法。

一个xml中可以有多个schema,只能有一个dtd。多个schema使用名称空间区分(类似于Java包名)。

dtd里面只有PCDATA类型,但是在schema里面可以支持更多的数据类型
|——比如年龄,只能是整数,在schema可以直接定义一个整数类型
由此可以发现schema语法更加严格。

schema语法更加复杂,schema目前不能代替dtd,两者共存。

2 Schema的开发过程

创建一个schema文件,后缀名是.xsd
|——根节点 <schema>
|——在schema元素里面
|——(1)属性:xmlns="http://www.w3.org/2001/XMLSchema",表示当前xml文件是一个约束文件
|——(2)属性:targetNamespace="http://www.itcast.cn/20151111",使用schema约束文件,直接通过这个地址引入约束文件
|——(3)属性:elementFormDefault="qualified"
步骤:
|——(1)看xml中有多少个元素,就定义多少个<element>
|——(2)看简单元素和复杂元素。如果是复杂元素,要用<complexType><sequence>元素的定义,示例如下:

<complexType>
    <sequence>
        子元素
    <sequencs>
</complexType>

如果是简单元素,直接使用<element name="" type=""></element>格式定义,属性name指被约束文件中元素名称,type指数据类型。

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
targetNamespace="http://www.example.org/person" 
xmlns:tns="http://www.example.org/person" 
elementFormDefault="qualified">
<element name="person">
    <complexType>
        <sequence>
            <element name="name" type="string"></element>
            <element name="age" type="int" />
        </sequence>
    </complexType
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值