前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >XML学习笔记2

XML学习笔记2

作者头像
别团等shy哥发育
发布2023-02-27 10:04:15
2660
发布2023-02-27 10:04:15
举报
文章被收录于专栏:全栈开发那些事

1.3 DTD约束 1.什么是约束:在xml文档中,咱们可以通过一个文件来约束xml文档中的内容规范。、 简单来说:约束就是规定xml文件中可以些什么,不可以些什么。 为什么要有约束? 因为xml文件可以随意写,如果标记随意些,在解析xml文件时,程序员就不清楚xml文件中的标记具体表示什么含义,所以说用约束规范xml文件的书写。 2.创建约束文件 什么是DTD:文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。 DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。

语法: 比如:

代码语言:javascript
复制
  <!ELEMENT 书架 (书名,作者,价格)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
  3.DTD引入:
     1.直接在xml文件中引入DTD约束
         语法:
        <!DOCTYPE 书架 [
   <!ELEMENT 书架 (书+)>
   <!ELEMENT 书架 (书名,作者,价格)>
   <!ELEMENT 书名 (#PCDATA)>
   <!ELEMENT 作者 (#PCDATA)>
   <!ELEMENT 价格 (#PCDATA)>
]>
代码语言:javascript
复制
 2.外部引入方式:
        >>>本地引入:
        语法:<!DOCTYPE 书架 SYSTEM “book.dtd”>
        >>>公网引入:
                <!-- DOCTYPE 书架  PUBLIC “DTD名称” “DTD文件在公网的url” -->

3.DTD语法: 基本语法:<!ELEMENT 元素名称 元素内容> 元素内容对应的类型:

普通的文本,#PCDATA 子元素:比如说:(子元素1,子元素2,—) EMPTY:比如说 ANY代表任意内容:元素内容可以是普通的文本,也可以是子元素。 注意: *表示0个或者多个 +表示一个或者多个 | 任选一个 ,表示子元素按顺序排列 ?表示可以出现0或者1

2.属性定义 语法:<!ATTLIST 元素名称 属性名称 属性类型 默认值> 属性类型: CDATA:属性值位任意文本数据; CDATA,即Character Data(字符数据)。表示属性的类型为字符类型 Enumerated:属性值必须是枚举列表中的一个; ID:属性值必须是唯一的,并且属性值不能以数字开头。 IDREF:属性值必须是ID属性的值; 属性类型的设置说明: #REQUIDED:表示属性是必须的; #IMPLIED:表示属性是可选的,即这个属性可以不给出。 1.4 Schema约束 1.什么是Schema约束:它同DTD约束基本一样,也是用来规范xml文件内容的书写规范,只不过Schema的约束笔DTD更加强大。 区别: >>>DTD约束文件的后缀名.dtd,机制采用自身的约束

Schema约束文件的后缀名是.xsd,它是基于xml语法格式。 2.什么是名称空间: 名称空间的作用就是用来在xml文档中引入schema文件的,但是在一个xml文件中可以引入多个schema文件,就可以使用名称空间来区分不同的约束文件。 3.引入Schema文档 第一种:通过名称空间来引入schema文件,第二种:不通过名称空间来引入。 4.Schema语法 元素定义 >>>属性定义

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-03-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档