zoukankan      html  css  js  c++  java
  • 2018/1/1 DTD约束+Scheme约束

    1、XML约束
    (1)XML约束要求:大家能够看懂约束内容,根据约束内容写出符合规则的xml文件。
    (2)XML语法: 规范的xml文件的基本编写规则。(由w3c组织制定的)
    (3)XML约束: 规范XML文件数据内容格式的编写规则。(由开发者自行定义)
    (4)XML约束技术
    DTD约束:语法相对简单,功能也相对简单。学习成本也低。
    Schema约束:语法相对复杂,功能也相对强大。学习成本相对高!!!(名称空间)
    2、DTD约束
    1)导入dtd方式
    内部导入
    <!DOCTYPE note [
    <!ELEMENT note (to,from,heading,body)>
    <!ELEMENT to (#PCDATA)>
    <!ELEMENT from (#PCDATA)>
    <!ELEMENT heading (#PCDATA)>
    <!ELEMENT body (#PCDATA)>
    ]>
    (2)外部导入
    本地文件系统:
    <!DOCTYPE note SYSTEM "note.dtd">
    公共的外部导入:
    <!DOCTYPE 根元素 PUBLIC "http://gz.itcast.cn/itcast.dtd">
    3、DTD语法

    约束标签
    <!ELEMENT 元素名称 类别> 或 <!ELEMENT 元素名称 (元素内容)>

    类别:
    空标签: EMPTY。 表示元素一定是空元素。
    普通字符串: (#PCDATA)。表示元素的内容一定是普通字符串(不能含有子标签)。
    任何内容: ANY。表示元素的内容可以是任意内容(包括子标签)
    (元素内容):
    顺序问题:
    <!ELEMENT 元素名称 (子元素名称 1,子元素名称 2,.....)>: 按顺序出现子标签
    次数问题:
    标签 : 必须且只出现1次。
    标签+ : 至少出现1次
    标签* : 0或n次。
    标签? : 0 或1次。
    约束属性
    <!ATTLIST 元素名称 属性名称 属性类型 默认值>
    默认值:
    #REQUIRED 属性值是必需的
    #IMPLIED 属性不是必需的
    #FIXED value 属性不是必须的,但属性值是固定的
    属性类型:控制属性值的
    CDATA :表示普通字符串
    (en1|en2|..): 表示一定是任选其中的一个值
    ID:表示在一个xml文档中该属性值必须唯一。值不能以数字开头
    4、Schema约束
    名称空间:告诉xml文档的哪个元素被哪个schema文档约束。 在一个xml文档中,不同的标签可以受到不同的schema文档的约束。
    1)一个名称空间受到schema文档约束的情况
    2)多个名称空间受到多个schema文档约束的情况
    3)默认名称空间的情况

    4)没有名称空间的情况

  • 相关阅读:
    Java8 Comparator 排序方法
    IDEA自动清理优化import包
    图灵的文章“Computing machinery and intelligence”译文
    NLP第一课(我也是才开始学)
    java面试基础篇(一)
    python基本排序算法
    python基础面试题整理---从零开始 每天十题(04)
    python基础面试题整理---从零开始 每天十题(03)
    python基础面试题整理---从零开始 每天十题(02)
    python基础面试题整理---从零开始 每天十题(01)
  • 原文地址:https://www.cnblogs.com/loong996/p/8169142.html
Copyright © 2011-2022 走看看