1 <!-- DTD for XML Signatures |
|
2 http://www.w3.org/2000/09/xmldsig# |
|
3 Joseph Reagle $last changed 20001215$ |
|
4 |
|
5 http://www.w3.org/2000/09/xmldsig# |
|
6 $Revision: 1.6 $ on $Date: 2008/07/24 16:15:03 $ by $Author: mullan $ |
|
7 |
|
8 Copyright 2001 The Internet Society and W3C (Massachusetts Institute |
|
9 of Technology, Institut National de Recherche en Informatique et en |
|
10 Automatique, Keio University). All Rights Reserved. |
|
11 http://www.w3.org/Consortium/Legal/ |
|
12 |
|
13 This document is governed by the W3C Software License [1] as described |
|
14 in the FAQ [2]. |
|
15 |
|
16 [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720 |
|
17 [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD |
|
18 --> |
|
19 |
|
20 |
|
21 <!-- |
|
22 |
|
23 The following entity declarations enable external/flexible content in |
|
24 the Signature content model. |
|
25 |
|
26 #PCDATA emulates schema string; when combined with element types it |
|
27 emulates schema's mixed content type. |
|
28 |
|
29 %foo.ANY permits the user to include their own element types from |
|
30 other namespaces, for example: |
|
31 <!ENTITY % KeyValue.ANY '| ecds:ECDSAKeyValue'> |
|
32 ... |
|
33 <!ELEMENT ecds:ECDSAKeyValue (#PCDATA) > |
|
34 |
|
35 --> |
|
36 |
|
37 <!ENTITY % Object.ANY ''> |
|
38 <!ENTITY % Method.ANY ''> |
|
39 <!ENTITY % Transform.ANY ''> |
|
40 <!ENTITY % SignatureProperty.ANY ''> |
|
41 <!ENTITY % KeyInfo.ANY ''> |
|
42 <!ENTITY % KeyValue.ANY ''> |
|
43 <!ENTITY % PGPData.ANY ''> |
|
44 <!ENTITY % X509Data.ANY ''> |
|
45 <!ENTITY % SPKIData.ANY ''> |
|
46 |
|
47 |
|
48 |
|
49 <!-- Start Core Signature declarations, these should NOT be altered --> |
|
50 |
|
51 <!ELEMENT Signature (SignedInfo, SignatureValue, KeyInfo?, Object*) > |
|
52 <!ATTLIST Signature |
|
53 xmlns CDATA #FIXED 'http://www.w3.org/2000/09/xmldsig#' |
|
54 Id ID #IMPLIED > |
|
55 |
|
56 <!ELEMENT SignatureValue (#PCDATA) > |
|
57 <!ATTLIST SignatureValue |
|
58 Id ID #IMPLIED> |
|
59 |
|
60 <!ELEMENT SignedInfo (CanonicalizationMethod, |
|
61 SignatureMethod, Reference+) > |
|
62 <!ATTLIST SignedInfo |
|
63 Id ID #IMPLIED |
|
64 > |
|
65 |
|
66 <!ELEMENT CanonicalizationMethod (#PCDATA %Method.ANY;)* > |
|
67 <!ATTLIST CanonicalizationMethod |
|
68 Algorithm CDATA #REQUIRED > |
|
69 |
|
70 <!ELEMENT SignatureMethod (#PCDATA|HMACOutputLength %Method.ANY;)* > |
|
71 <!ATTLIST SignatureMethod |
|
72 Algorithm CDATA #REQUIRED > |
|
73 |
|
74 <!ELEMENT Reference (Transforms?, DigestMethod, DigestValue) > |
|
75 <!ATTLIST Reference |
|
76 Id ID #IMPLIED |
|
77 URI CDATA #IMPLIED |
|
78 Type CDATA #IMPLIED> |
|
79 |
|
80 |
|
81 <!ELEMENT Transforms (Transform+)> |
|
82 |
|
83 <!ELEMENT Transform (#PCDATA|XPath %Transform.ANY;)* > |
|
84 <!ATTLIST Transform |
|
85 Algorithm CDATA #REQUIRED > |
|
86 |
|
87 <!ELEMENT XPath (#PCDATA) > |
|
88 |
|
89 <!ELEMENT DigestMethod (#PCDATA %Method.ANY;)* > |
|
90 <!ATTLIST DigestMethod |
|
91 Algorithm CDATA #REQUIRED > |
|
92 |
|
93 <!ELEMENT DigestValue (#PCDATA) > |
|
94 |
|
95 <!ELEMENT KeyInfo (#PCDATA|KeyName|KeyValue|RetrievalMethod| |
|
96 X509Data|PGPData|SPKIData|MgmtData %KeyInfo.ANY;)* > |
|
97 <!ATTLIST KeyInfo |
|
98 Id ID #IMPLIED > |
|
99 |
|
100 <!-- Key Information --> |
|
101 |
|
102 <!ELEMENT KeyName (#PCDATA) > |
|
103 <!ELEMENT KeyValue (#PCDATA|DSAKeyValue|RSAKeyValue %KeyValue.ANY;)* > |
|
104 <!ELEMENT MgmtData (#PCDATA) > |
|
105 |
|
106 <!ELEMENT RetrievalMethod (Transforms?) > |
|
107 <!ATTLIST RetrievalMethod |
|
108 URI CDATA #REQUIRED |
|
109 Type CDATA #IMPLIED > |
|
110 |
|
111 <!-- X.509 Data --> |
|
112 |
|
113 <!ELEMENT X509Data ((X509IssuerSerial | X509SKI | X509SubjectName | |
|
114 X509Certificate | X509CRL )+ %X509Data.ANY;)> |
|
115 <!ELEMENT X509IssuerSerial (X509IssuerName, X509SerialNumber) > |
|
116 <!ELEMENT X509IssuerName (#PCDATA) > |
|
117 <!ELEMENT X509SubjectName (#PCDATA) > |
|
118 <!ELEMENT X509SerialNumber (#PCDATA) > |
|
119 <!ELEMENT X509SKI (#PCDATA) > |
|
120 <!ELEMENT X509Certificate (#PCDATA) > |
|
121 <!ELEMENT X509CRL (#PCDATA) > |
|
122 |
|
123 <!-- PGPData --> |
|
124 |
|
125 <!ELEMENT PGPData ((PGPKeyID, PGPKeyPacket?) | (PGPKeyPacket) %PGPData.ANY;) > |
|
126 <!ELEMENT PGPKeyPacket (#PCDATA) > |
|
127 <!ELEMENT PGPKeyID (#PCDATA) > |
|
128 |
|
129 <!-- SPKI Data --> |
|
130 |
|
131 <!ELEMENT SPKIData (SPKISexp %SPKIData.ANY;) > |
|
132 <!ELEMENT SPKISexp (#PCDATA) > |
|
133 |
|
134 <!-- Extensible Content --> |
|
135 |
|
136 <!ELEMENT Object (#PCDATA|Signature|SignatureProperties|Manifest %Object.ANY;)* > |
|
137 <!ATTLIST Object |
|
138 Id ID #IMPLIED |
|
139 MimeType CDATA #IMPLIED |
|
140 Encoding CDATA #IMPLIED > |
|
141 |
|
142 <!ELEMENT Manifest (Reference+) > |
|
143 <!ATTLIST Manifest |
|
144 Id ID #IMPLIED > |
|
145 |
|
146 <!ELEMENT SignatureProperties (SignatureProperty+) > |
|
147 <!ATTLIST SignatureProperties |
|
148 Id ID #IMPLIED > |
|
149 |
|
150 <!ELEMENT SignatureProperty (#PCDATA %SignatureProperty.ANY;)* > |
|
151 <!ATTLIST SignatureProperty |
|
152 Target CDATA #REQUIRED |
|
153 Id ID #IMPLIED > |
|
154 |
|
155 <!-- Algorithm Parameters --> |
|
156 |
|
157 <!ELEMENT HMACOutputLength (#PCDATA) > |
|
158 |
|
159 <!ELEMENT DSAKeyValue ((P, Q)?, G?, Y, J?, (Seed, PgenCounter)?) > |
|
160 <!ELEMENT P (#PCDATA) > |
|
161 <!ELEMENT Q (#PCDATA) > |
|
162 <!ELEMENT G (#PCDATA) > |
|
163 <!ELEMENT Y (#PCDATA) > |
|
164 <!ELEMENT J (#PCDATA) > |
|
165 <!ELEMENT Seed (#PCDATA) > |
|
166 <!ELEMENT PgenCounter (#PCDATA) > |
|
167 |
|
168 <!ELEMENT RSAKeyValue (Modulus, Exponent) > |
|
169 <!ELEMENT Modulus (#PCDATA) > |
|
170 <!ELEMENT Exponent (#PCDATA) > |
|
171 |
|