zoukankan      html  css  js  c++  java
  • xml

    xml语法

    xml保留PCDATA中的空白符,回车换行缩进


    dtd-1

    内部,外部,公共DTD

    元素
    属性
    实体

    定义子元素
        有序子元素:逗号隔开
        互斥子元素:竖线隔开
        子元素出现的频率:
            +一次或多次
            *零次或多次
            ?零次或一次
            无必须出现一次
        组合子元素:使用圆括号
        
    dtd-2
    如果想对某一个元素中的属性进行限制,就用下面的
    <!ATTLIST video id CDATA #IMPLIED>
             元素 属性名 属性类型 属性值声明
    可以同时声明多个属性但不能重复,直接空格隔开

    枚举
        默认值    <!ATTLIST video type (java|xml|database) "xml">
        固定值    <!ATTLIST video type (java|xml|database) #FIXED "xml">
        必须值    <!ATTLIST video type (java|xml|database) #REQUIRED>
        隐含值    <!ATTLIST video type (java|xml|database) #IMPLIED>
        
    dtd-3
        实体的使用
        外部DTD的使用
        DTD的优缺点
        
        实体分类
        可以是一段要替换的文本,xml标记或外部文件
            内置实体
            字符实体    &#169;
            普通实体    需要在DTD中声明
            参数实体    中允许在DTD中使用

        引用外部DTD
            系统标识符
                <!DOCTYPE videos SYSTEM "uri" [
                    可选的内部DTD声明
                ]>
            公共标识符
                <!DOCTYPE videos PUBLIC "FPI" "uri" >
                FPI的基本格式:-//W3C/DTD XHTML 1.0 Transitional//EN

        DTD的优缺点
            缺点
                DTD语法与xml不一致
                缺少对xml命名空间的支持
                缺少数据分类
                内容模型描述受限制

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE videos SYSTEM "test.dtd">
    <videos>
        <video id="v001" vid="id1" >
            <title>java &unkown;</title>
        </video>
        <video id="v002" vid="id2" >
            <author>li</author>
            <publish />
        </video>
    </videos>
    
    
    test.dtd
    <?xml version="1.0" encoding="UTF-8"?>
        <!ELEMENT videos (video*)>
        <!ELEMENT video (title|(author,publish))>
        <!ATTLIST video id CDATA #REQUIRED>
        <!ATTLIST video vid ID #REQUIRED>
        <!ATTLIST video type (java|xml|database) #FIXED "xml">
        <!ELEMENT title (#PCDATA)>
        <!ELEMENT author (#PCDATA)>
        <!ELEMENT publish EMPTY>
        <!ENTITY unkown "未知数据">
  • 相关阅读:
    "SoftwareHex-RaysIDA" exists, but no "Python3TargetDLL" value found No Python installations were found
    visual studio修改安装位置
    ror13hash
    IMAGE_DIRECTORY_ENTRY_SECURITY【证书属性表
    华为云自动学习物体检测(滑动窗口)
    Java BigInteger中的oddModPow
    vue 动态路由传参三种方式
    git根据项目地址使用不同代理服务器
    关于MySQL8的WITH查询学习
    有1、2、3、4个数字,能组成多少个互不相同 且无重复数字的三位数?都是多少?
  • 原文地址:https://www.cnblogs.com/createyuan/p/8694456.html
Copyright © 2011-2022 走看看