xml文档书写

本文介绍了XML文档的约束方式,包括DTD和SCHEMA约束,详细讲解了它们如何限制XML的书写,并简单提及了XML解析的方法,虽然解析部分已封装完成,但DTD和SCHEMA的使用是理解的重点。
摘要由CSDN通过智能技术生成
<?xml version ="1.0" encoding="utf-8" ?>  <!--xml文档的标准开头,说明这个是xml文档,使用版本是1.0,在这个文档中可以使用中文-->

<!--
①xml语法:
        1 html是从xml演化出来的一个编程语言,xml和html是父子关系,html只不过在xml的基础上
          事先规定了哪些标签哪些标签不可用,而xml是标签可以任意写,所以被所有浏览器拒绝,因
          为解析起来很麻烦,大家没有一个统一的标准
        2 html绝大多数语法都来自于xml(同1)
        3 一个xml文档必须以一个仅且一个【根目录标签】为开始,其他标签必须作为
          【根目录标签】的直接子标签或者间接子标签出现
        4 html标签中属性内容可以通过一对""包含,也可以不用,但是.xml标签属性内容必须包含在
          一对""或者''
 -->
 
<学校 name="某某大学">
    <班级 name="软工一班">
        <学员 name="mike"></学员>
    </班级>

    <班级 name="软工二班">
        <学员 name="睿睿"></学员>
    </班级>

    <abc name="hahahhah"></abc>
</学校>

<!--
②xml文档读取方式:
       1 SAX读取方式:根据开发人员需要,一次将若干个满足条件标签加载到内存中
                      优点:可以节省内存
                      缺点:如果需要读取大量标签信息时,运行效率就比较慢(一次只加载部分,当需要别的标签的时候,就再重新读取到内存)
       2 DOM读取方式:一次性将xml文档所有的内容,加载到内存中
                     缺点:浪费内存
                     优点:如果读取大量标签的时候,此时由于是在内存中进行定位的,所以运行速度很快

       3 在实际的开发过程中,一般都采用DOM方式来读取

③xml约束文档
    1.xml约束文档的作用:
        1)设置可以在当前xml文档中声明的【标签名】,也就是不可以在xml文档里,任意的
           写标签了,就具体任务具体的去写标签
        2)设置可以在标签中出现的【属性名】,也就是属性名也不能瞎写了

        3)设置标签之间的父子关系和兄弟关系,就是标签的包含关系不能瞎写了

    2. xml约束文档分类:
        1)DTD约束文档:简单约束文档
        2)SCHEMA 约束文档:高级约束文档(开发中常用)
        注:一般开发中只能导入一种约束,因为如果都对同一个标签进行了约束,那么xml不知道改用哪种约束进行规范
-->

一、DTD约束文档

①下图就是一个DTD约束文档(自己本身就是一个xml文档)
在这里插入图片描述
②dtd文档是如何对xml的书写进行限制的呢
在这里插入图片描述
在这里插入图片描述
③知道约束文档的含义了,那么如何将dtd约束添加到我们所书写的xml文档中呢
在这里插入图片描述

一、SCHEMA约束文档

①先来看看SCHEMA约束文档长什么样
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
②SCHEMA文档是如何对xml的书写进行限制的呢?

element表明是标签,element后面的name表明是标签名,通过标签间的包含关系来表明父子关系,minOccurs和maxOccurs表明最小最大出现次数 “unBounded”表明是不受限制,attribute表明是标签中的属性,说明web-app下有个version属性

③知道约束文档的含义了,那么如何将SCHEMA约束添加到我们所书写的xml文档中呢?

在这里插入图片描述

xml解析方法(这部分内容其实不需要我们去详细的掌握,已经封装好了的部分)

https://www.cnblogs.com/yaobolove/p/5568128.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值