レプリケーション競合レポートのXML Document Type Definition(DTD)は、レプリケーション競合のログを含む有効なXMLファイルの要素および構造を記述した一連のマークアップ宣言です。このDTDは、競合がXMLファイルにレポートされるようにレプリケーションを構成したときに作成されるXMLヘッダー・ファイル(拡張子.xmlを持つファイル)に含まれます。XMLを認識するユーザー・アプリケーションでは、DTDを使用してXMLレプリケーション競合レポートの残りの部分が解析されます。XML Document Type Definition(DTD)を判読および理解する方法の詳細は、http://www.w3.org/TR/REC-xmlを参照してください。
<?xml version="1.0"?>
<!DOCTYPE ttreperrorlog [
<!ELEMENT ttrepconflictreport (conflict*) >
<!ELEMENT repconflict header, conflict) >
<!ELEMENT header (time, datastore, transmitter, table) >
<!ELEMENT time (hour, min, sec, year, month, day) >
<!ELEMENT hour (#PCDATA) >
<!ELEMENT min (#PCDATA) >
<!ELEMENT sec (#PCDATA) >
<!ELEMENT year (#PCDATA) >
<!ELEMENT month (#PCDATA) >
<!ELEMENT day (#PCDATA) >
<!ELEMENT datastore (#PCDATA) >
<!ELEMENT transmitter (#PCDATA) >
<!ELEMENT table (tableowner, tablename) >
<!ELEMENT tableowner (#PCDATA) >
<!ELEMENT tablename (#PCDATA) >
<!ELEMENT scope (#PCDATA) >
<!ELEMENT failedtransaction ((insert | update | delete)+) >
<!ELEMENT insert (sql) >
<!ELEMENT update (sql, keyinfo, newtuple) >
<!ELEMENT delete (sql, keyinfo) >
<!ELEMENT sql (#PCDATA) >
<!ELEMENT keyinfo (column+) >
<!ELEMENT newtuple (column+) >
<!ELEMENT column (columnname, columntype, columnvalue) >
<!ATTLIST column
pos CDATA #REQUIRED >
<!ELEMENT columnname (#PCDATA) >
<!ELEMENT columnvalue (#PCDATA) >
<!ATTLIST columnvalue
isnull (true | false) "false"
>
<!ELEMENT existingtuple (column+) >
<!ELEMENT conflictingtuple (column+) >
<!ELEMENT conflictingtimestamp (#PCDATA) >
<!ELEMENT existingtimestamp (#PCDATA) >
<!ELEMENT oldtuple (column+) >
<!ELEMENT conflict (conflictingtimestamp, existingtimestamp*,
existingtuple*, existingtimestamp*,
conflictingtuple*, oldtuple*, keyinfo*) >
<!ATTLIST conflict
type (insert | update | deletedupdate | updatedeleted) #REQUIRED
>
<!ENTITY logFile SYSTEM "Filename.include">
]>
<ttrepconflictreport>
&logFile;
</ttrepconflictreport>