XML文件头里可以写完整的DTD定义,即一个XML文件里可以既同时包括DTD定义和XML数据,如下,这么写XML文件是合法的。
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE UserExceptions [ <!ELEMENT UserExceptions (UserException)> <!ELEMENT UserException (Error+)> <!ATTLIST UserException ErrorCatalog CDATA ""> <!ATTLIST UserException Description CDATA ""> <!ELEMENT Error (ErrorNo,ErrorMessage)> <!ELEMENT ErrorCatalog (#PCDATA)> <!ELEMENT Description (#PCDATA)> <!ELEMENT ErrorNo (#PCDATA)> <!ELEMENT ErrorMessage (#PCDATA)> ]> <UserExceptions> <UserException ErrorCatalog="1" Description="SERVER"> <Error> <ErrorNo>1001</ErrorNo> <ErrorMessage>网络连接错误</ErrorMessage> </Error> <Error> <ErrorNo>1002</ErrorNo> <ErrorMessage>数据库异常</ErrorMessage> </Error> </UserException> </UserExceptions>