dtd语法
dtd语法
<!ELEMENT 元素名 约束>
//简单元素三种:没有子元素的元素
eg:
<!ELEMENT name (#PCDATA)>
(#PCDATA):约束name是字符串类型
EMPTY:元素为空
ANY:任意
//复杂元素:
eg:
<!ELEMENT person (name,age)>
//表示元素只能出现一次
//表示元素出现次数
+ : >=1
? : 0||1
* : 任意
eg:
<!ELEMENT person (name*,age?)>
//表示元素出现的顺序
,
//只能出现元素中的一个
|
eg:
<!ELEMENT person (name*|age?)>
使用dtd定义属性
//语法:<!ATTLIST 元素名称 属性名称 属性类型 属性的约束>
//属性类型
- CDATA:字符串
eg:
<!ATTLIST name ID2 CDATA #REQUIRED>
<name ID2="cac">laowang</name>
- 枚举:只能在一定范围内出现,但是每次只能出现一个
eg:(aa|bb|cc)
<!ATTLIST age ID (aa|bb|cc) #REQUIRED>
<age ID="aa">25</age>
-ID:值只能是字母或者下划线开头
eg:
<!ATTLIST birthday ID3 ID #REQUIRED>
<birthday ID3="A12">1111</birthday>
//属性的约束
- #REQUIRED: 属性必须存在
- #IMPLIED: 属性可有可无
- #FIXED: 表示固定的一个值 #FIXED "AAA"
- 属性的值必须是设置的固定值
- 直接值(默认值)
eg:
<!ATTLIST name ID2 CDATA "aaa">
属性值默认为 aaa
dtd实体的定义
//语法:<!ENTITY 实体名称 "实体的值">
//<!ENTITY TEST "HAHAHA">
//实体的使用:&实体名称; 比如 &TEST;
//实体最好定义在xml中
dtd语法的更多相关文章
- 【代码笔记】XML深入学习:DTD约束与DTD语法(2)
DTD语法之定义实体(了解即可) 实体分为一般实体和参数实体. 定义实体:定义变量 引用实体:使用变量 一般实体:定义实体在DTD中,实体引用在xml中. 参数实体:定义实体在DTD中,实体引用在DT ...
- 【代码笔记】XML深入学习:DTD约束与DTD语法(1)
2015-12-27 文件名 student.xml <?xml version="1.0" encoding="GB2312" standalon ...
- XML中的DTD语法
DTD(Document Type Definition),全称为文档类型定义. 文件清单:book.xml <?xml version="1.0" ?> <!D ...
- XML DTD语法详解
XML DTD详解 XML DTD详解 前情提要与本文内容介绍 前面的两篇XML相关博文: 第一篇是介绍格式正规的XML: 格式正规的XML:语法 属性 实体 处理指令 样式单 CDATA节 第二 ...
- dtd语法之定义属性
1.语法: <!ATTLIST 元素名称 属性名称 属性类型 默认值> 属性类型: l CDATA :文本数据 l (en1|en2|……) :属性值任选其一 l ID :属性值必须是唯 ...
- dtd语法之定义元素
1.语法:<!ELEMENT 元素名 使用规则> 使用规则: l (#PCDATA) :表示内容为普通文本数据 l EMPTY :表示元素内容必须为空 l ANY :元素出现任意次,一般用 ...
- XML DTD跟SCHEMA约束 语法了解
dtd语法 元素: <!Element 元素名称 数据类型|包含内容> 数据类型: #PCDATA:普通文本 使用的时候一般用()引起来 包含内容: 该元素下可以出现哪些元素, 用()引起 ...
- 【JAVA与XML、dtd约束、Schema约束】
一.XML. (1)XML:Extensible Markup Language (2)XML是一种标记语言. (3)XML的设计宗旨是传输数据,而不是显示数据. (4)XML标签没有被预定义,即使用 ...
- 【PHP XML与dtd概述【完整版】】
一.XML文件简介 关于XML的大多数人都知道一些,HTML->xhtml->xml,这个顺序本来应当是HTML发展的顺序. XML可以当做配置文件使用,还可以充当小型的数据库. vers ...
随机推荐
- [转]Oracle 11g R2 RAC高可用连接特性 – SCAN详解
原文地址:http://czmmiao.iteye.com/blog/2124373 昨天帮朋友解决11g RAC SCAN问题,当时为这朋友简单解答了一些SCAN特性相关的问题,但我知道这仅仅是 ...
- [b0023] python 归纳 (九)_html解析-lxml
# -*- coding: utf-8 -*- """ 学习lxml解析网页 程序功能: 解析 360影视 电影排行榜中的信息 https://www.360kan.co ...
- 借助meta影藏顶部菜单
1===>报错 Cannot find module 'webpack/lib/Chunk' 删除node_modules 然后重新下载 4==> 现在已进入页面,底部就有四个菜单,在点击 ...
- vue--实现跑马灯效果
<div id="app"> <input type="button" value="开始" @click="l ...
- JS的节流、防抖及使用场景
前言 据说阿里有一道面试题就是谈谈函数节流和函数防抖. 糟了,这可触碰到我的知识盲区了,好像听也没听过这2个东西,痛定思痛,赶紧学习学习.here we go! 概念和例子 函数防抖(debounce ...
- 2.git的 分支管理
一般我们进行提交的时候.都是在master上面提交的. git status 查看当前分支. [root@localhost jenkins_git]# git branch about * mast ...
- 纯CSS打造BiliBili样式博客主题
前言 一直以来,我都在思考如何减少不必要的JS代码,仅通过CSS来实现博客园主题美化.CSS有很多魔法代码,例如:before,iconfont,order,等等,利用好这些技巧,也能实现很好美化效果 ...
- CentOS设置主机名称
1.查看主机名,使用命令hostname: 2.修改主机名,修改/etc/hostname文件
- k8s web终端连接工具
k8 web terminal 一个k8s web终端连接工具,在前后端分离或未分离项目中心中,也可以把此项目无缝集成,开箱即用. 项目地址:https://github.com/jcops/k8-w ...
- 从游击队到正规军:马蜂窝旅游网的IM系统架构演进之路
本文引用自马蜂窝公众号,由马蜂窝技术团队原创分享. 一.引言 今天,越来越多的用户被马蜂窝持续积累的笔记.攻略.嗡嗡等优质的分享内容所吸引,在这里激发了去旅行的热情,同时也拉动了马蜂窝交易的增长.在帮 ...