zoukankan      html  css  js  c++  java
  • xml文件对应的DTD学习

    DTD文件:

    1.DTD文档主要由(元素,属性,实体,PCDATA,CDATA)

    2.声明一个元素:<!ELEMENT 元素名称 (元素内容)>

    eg: <!ELEMENT persons (person)>

    特殊元素: <!ELEMENT 元素名称 EMPTY>结果类诗如下:<!ELEMENT br EMPTY>

    效果:<br />

    带有任何内容的元素: <!ELEMENT 元素名称 ANY>  EG: <!ELEMENT note ANY>

     

    3.当最后只有PCDATA元素时 (元素内容) –> (#PCDATA)

    <!ELEMENT 元素名称 (#PCDATA)>

    eg:  <!ELEMENT name (#PCDATA)>

     

    4.带有子元素的元素:

    <<

     

    <!ELEMENT 元素名称 (子元素名称,多个用“,”分割)>

    eg:  <!ELEMENT person (id,name,age) >

     

    5.在默认的情况下,声明的元素都是只出现一次的。

    在元素后面添加标志,可改元素出现的次数。

    +  :出现1次或多次,至少出现一次,

    *  :出现0次或多次,

    ?  :出现0次或1次,

     

    6.声明属性  <!ATTLIST 元素名称  属性名称  属性类型  默认值>

    其中属性类型可以有以下选择:

    CDATA
    值为字符数据 (character data)

    (en1|en2|..)
    此值是枚举列表中的一个值

    ID
    值为唯一的 id

    IDREF
    值为另外一个元素的 id

    IDREFS
    值为其他 id 的列表

    NMTOKEN
    值为合法的 XML 名称

    NMTOKENS
    值为合法的 XML 名称的列表

    ENTITY
    值是一个实体

    ENTITIES
    值是一个实体列表

    NOTATION
    此值是符号的名称

    xml:
    值是一个预定义的 XML 值

     

    默认值可以取以下值:

     

    #REQUIRED
    属性值是必需的

    #IMPLIED
    属性不是必需的

    #FIXED value
    属性值是固定的

    eg:  <!ATTLIST person  sex  CDATA  “男”>

    7.声明一个实体:<!ENTITY 实体名称  “实体的值”>

    <! ENTITY copyright “Copyright author”>

     

     

    8.一个简单的应用:

    1.不按标准写但结构类似写法:

    <persons  sex>

        <person>

             <id></id>

             <name></name>

             <age></age>

        </person>

    </persons>

    2.把上面的转为dtd格式:

    <!ELEMENT persons (person)>

    <!ELEMENT persons  sex  CDATA  “男”>

    <!ELEMENT person (id,name,age)>

    <!ELEMENT id (#PCDATA)>

    <!ELEMENT name (#PCDATA)>

    <!ELEMENT age (#PCDATA)>

  • 相关阅读:
    cscope使用技巧
    GNU的strong symbol和weak symbol
    vim自定义插件放入pathogen管理
    kernel生成针对x86架构的tags和cscope数据库
    vim+cscope简易教程
    mac重装系统
    Mac升级bash到最新版本
    Mac中提升权限修改系统目录
    macbook中gcc替换为gnu gcc
    固定二进制位的整型变量
  • 原文地址:https://www.cnblogs.com/haoke/p/4448735.html
Copyright © 2011-2022 走看看