XML (2) Document Type Definitions (DTD)

原创 2007年09月18日 05:58:00
XML提供了和显示无关的内容数据,可是数据的结构怎么确定呢?对于复杂问题,肯定是先有一个提纲,在给出具体内容,所以我们需要一种方式来提供XML的数据结构定义,这个就是DTD。

Element Declarations
<! ELEMENT SAMPLE (#PCDATA)>


Document Type Declarations
<!DOCTYPE name_of_root_element SYSTEM "URL" [ internal DTD subset]>

external DTD subsets: Link to an outside file( often *.dtd)
internal DTD subsets: declaration in the XML file

Command-line validation
libxml2

Wed-based validation
www.cogsci.ed.ac.uk/~richard/xml-check.html
www.stg.brown.edu/service/xmlvalid

Elements Declarations
  1. Define elements, like
    <!ELEMENT SAMPLE1 ANY>

  2. Find out the #PCDATA, change all necessary elements to #PCDATA, like
    <!ELEMENT SAMPLE2 (#PCDATA)>

  3. Find out the child elements, add to necessary elements, like
    <!ELEMENT SAMPLE3 (CHILD_SAMPLE1+, CHILD_SAMPLE2?, (CHILD_SAMPLE3* | CHILD_SAMPLE4| CHILD_SAMPLE5)?,(CHILD_SAMPLE6, CHILD_SAMPLE7)*, #PCDATA )>
    Empty elements, like <!ELEMENT SAMPLE4 EMPTY>
    Comments in DTD, like <!-- comments -->

Tips:
Case sensitive
Sequence sensitive

Attribute Declarations
    <!ATTLIST Element_name Attribute_name Type Default_value>
    Attribute Types: CDATA, Emumerated, ID, IDREF, IDREFS, ENTITY, ENTINITYS, NMTOKEN, NMTOKENS, NOTION
<!ELEMENT AUTHOR EMPTY>
<!ATTLIST AUTHOR COMPANY CDATA #FIXED "TIC">
<!ATTLIST EXTENSION CDATA #IMPLIED>
<!ATTLIST AUTHOR NAME CDATA #REQUIRED>

Namespaces
    Everyone can define elements, so name collision can be avoided. Like java, to avoid the class name collision, import Name Space.

All from 《XML 1.1 Bible 3rd Edition》

DTD(Document Type Definition)详解

DTD(Document Type Definition)全名是文档类型定义,用来为XML文档定义语义约束 一,DTD引入方式:1,内部DTA 2,外部DTD 3,公用DTD 二,定义元素:1,任意类...
  • a19881029
  • a19881029
  • 2014年12月15日 10:28
  • 2193

XML(8) Document Type Definitions(DTD)

external DTD example name.dtd: name.xml John Fitzgerald Johansen Doe internal ...
  • xinghua24
  • xinghua24
  • 2012年06月30日 23:16
  • 215

如何解决XML文件中的警告提示“No grammar constraints (DTD or XML Schema) referenced in the document.” .

如何解决XML文件中的警告提示“No grammar constraints (DTD or XML Schema) referenced in the document.” SN...
  • LittleSkey
  • LittleSkey
  • 2016年09月22日 20:45
  • 1869

xml DTD(document type definition)

book.xml java程序性能优化 张三 30.9 Python接口测试...
  • fanzhikangkang
  • fanzhikangkang
  • 2017年12月15日 06:25
  • 25

解决No grammar constraints (DTD or XML Schema) referenced

No grammar constraints (DTD or XML Schema) referenced in the document.
  • zhaohuihua
  • zhaohuihua
  • 2014年08月15日 09:45
  • 867

去除eclipse中xml文件的 No grammar constraints (DTD or XML schema) detected for the document警告

当eclipse的xml文件经常会弹出No grammar constraints (DTD or XML schema) detected for the document警告,看字面意思是没有xm...
  • imyang2007
  • imyang2007
  • 2013年01月17日 10:44
  • 5460

如何解决XML文件中的警告提示“No grammar constraints (DTD or XML Schema) referenced in the document.”

如何解决XML文件中的警告提示“No grammar constraints (DTD or XML Schema) referenced in the document.”...
  • ClementAD
  • ClementAD
  • 2015年06月01日 18:17
  • 8597

No grammar constraints (DTD or XML Schema) referenced in the document.

 今天使用eclipse后,看到xml中的警告图标,提示:No grammar constraints (DTD or XML Schema) referenced in the documen...
  • mingtianhaiyouwo
  • mingtianhaiyouwo
  • 2016年01月06日 09:20
  • 536

XML文件警告:No grammar constraints (DTD or XML schema) detected for the document.的解决方法!

首先,Eclipse里的No grammar constraints (DTD or XML schema) detected for the document警告信息,对于程序的运行是没有影响的,它...
  • zuiaibenpao
  • zuiaibenpao
  • 2017年02月09日 10:01
  • 376

HTML5基础常识

http://www.html5cn.org/article-9230-1.html
  • kongyajie
  • kongyajie
  • 2016年02月05日 15:39
  • 257
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:XML (2) Document Type Definitions (DTD)
举报原因:
原因补充:

(最多只允许输入30个字)