zoukankan      html  css  js  c++  java
  • Introduction to DTD

    A Document Type Definition (DTD) defines the legal building blocks of an XML document. It defines the document structure with a list of legal elements and attributes.

    A DTD can be declared inline inside an XML document, or as an external reference.

    Internal DTD Declaration

    If the DTD is declared inside the XML file, it should be wrapped in a DOCTYPE definition with the following syntax:

    <!DOCTYPE root-element [element-declarations]>

    Example XML document with an internal DTD:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE note [
    <!ELEMENT note (to,from,heading,body)>
    <!ELEMENT to (#PCDATA)>
    <!ELEMENT from (#PCDATA)>
    <!ELEMENT heading (#PCDATA)>
    <!ELEMENT body (#PCDATA)>
    ]>
    <note>
        <to>Tove</to>
        <from>Jani</from>
        <heading>Reminder</heading>
        <body>Don't forget me this weekend</body>
    </note>

    Open the XML file above in your browser (select "view source" or "view page source" to view the DTD)

    The DTD above is interpreted like this:

    • !DOCTYPE note defines that the root element of this document is note
    • !ELEMENT note defines that the note element contains four elements: "to,from,heading,body"
    • !ELEMENT to defines the to element to be of type "#PCDATA"
    • !ELEMENT from defines the from element to be of type "#PCDATA"
    • !ELEMENT heading defines the heading element to be of type "#PCDATA"
    • !ELEMENT body defines the body element to be of type "#PCDATA"

    External DTD Declaration

    If the DTD is declared in an external file, it should be wrapped in a DOCTYPE definition with the following syntax:

    <!DOCTYPE root-element SYSTEM "filename">

    This is the same XML document as above, but with an external DTD (Open it, and select view source):

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE note SYSTEM "C:UsersmaijunjinDesktopdtd
    ote.dtd">
    <note>
        <to>Tove</to>
        <from>Jani</from>
        <heading>Reminder</heading>
        <body>Don't forget me this weekend!</body>
    </note>

     

    And this is the file "note.dtd" which contains the DTD:

    <?xml version="1.0" encoding="UTF-8"?>
    <!ELEMENT note (to,from,heading,body)>
    <!ELEMENT to (#PCDATA)>
    <!ELEMENT from (#PCDATA)>
    <!ELEMENT heading (#PCDATA)>
    <!ELEMENT body (#PCDATA)>

    Why Use a DTD?

    With a DTD, each of your XML files can carry a description of its own format.

    With a DTD, independent groups of people can agree to use a standard DTD for interchanging data.

    Your application can use a standard DTD to verify that the data you receive from the outside world is valid.

    You can also use a DTD to verify your own data.

  • 相关阅读:
    HDU 1290 献给杭电五十周年校庆的礼物(面分割空间 求得到的最大空间数目)
    2018年暑假ACM个人训练题6 解题报告
    HDU 2096 小明A+B(%的运用)
    HDU 2097 sky数 (进制转化)
    布局(codevs 1242)
    Remmarguts’ Date(poj 2449)
    魔法猪学院(codevs 1835)
    统计单词个数(codevs 1040)
    小L 的二叉树(洛谷 U4727)
    Shortest Prefixes(poj 2001)
  • 原文地址:https://www.cnblogs.com/ghgyj/p/3991904.html
Copyright © 2011-2022 走看看