2021-07-31-schema


layout: post
#标题配置
title: schema语法属性以及与dtd的区别
#时间配置
date: 2021-07-31 14:10:00 +0800
#目录配置
categories: schema
#标签配置
tag: 学习笔记

  • content
    {:toc}

schema

schema和dtd的区别

  1. schema约束文件也是一个xml文件,符合xml的语法,这个文件的后缀名.xsd
  2. 一个xml中可以引用多个schema约束文件,多个schema使用名称空间区分(名称空间类似于java包名)
  3. dtd里面元素类型的取值比较单一常见的是PCDATA类型,但是在schema里面可以支持很多个数据类型
  4. schema语法更加地复杂
其他文件约束schema文件,schema约束xml文件
Schema文件用来约束一个xml文件,同时也被别的文件约束着

引入

例:

<?xml version="1.0" encoding="UTF-8" ?>
<persons
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    			        xmlns="https://wzkweb.azurewebsites.net/UOLabNUC2020/login.html" xsi:schemaLocation="https://wzkweb.azurewebsites.net/UOLabNUC2020/login.html person.xsd"
>
    <person>
        <name>张三</name>
        <age>23</age>
    </person>
</persons>

语法

<?xml version="1.0" encoding="UTF-8" ?>
<schema
        xmlns="http://www.w3.org/2001/XMLSchema"
        targetNamespace="https://wzkweb.azurewebsites.net/UOLabNUC2020/login.html"
        elementFormDefault="qualified"
    >
    <!--定义persons复杂元素-->
    <element name="persons">
        <complexType>
            <sequence>
                <!--定义person复杂元素-->
                <element name="person">
                    <complexType>
                        <sequence>
                           <!--定义name和age简单元素-->
                            <element name="name" type="string"></element>
                            <element name="age" type="string"></element>
                        </sequence>
                    </complexType>

                </element>
            </sequence>
        </complexType>
    </element>

</schema>

定义属性

required(必须的)

optional(可选的)

</sequence>
<attribute name="id" type="string" use="required"></attribute>
</complexType>

写在和之间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拾光1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值