1 |
|
2006-02-17 Wakaba <wakaba@suika.fam.cx> |
2 |
|
|
3 |
|
* XMLParser.dis: Default attribute are now namespace aware. |
4 |
|
(parseString): Don't output |Document| warnings |
5 |
|
during tree construction to standard error output. |
6 |
|
|
7 |
|
2006-02-16 Wakaba <wakaba@suika.fam.cx> |
8 |
|
|
9 |
|
* XMLParser.dis: Name check for XML 1.0, XML Namespace 1.0, and |
10 |
|
XML Namespace 1.1 is implemented. Namespace well-formedness |
11 |
|
error detection is implemented. Generates |Notation| nodes |
12 |
|
from notation declarations. |
13 |
|
(checkNCName, checkQName): New code fragments. |
14 |
|
|
15 |
|
* XDoctype.dis (DocumentXDoctype): Factory methods |
16 |
|
don't check |MDOMX:MDOM_BAD_NAME| if |Document.strictErrorChecking| |
17 |
|
is |false|. |
18 |
|
|
19 |
|
* DOMCore.dis (wf-invalid-character-in-node-name, |
20 |
|
wf-invalid-character): Removed (moved to |MDOM:Tree| module). |
21 |
|
|
22 |
|
* Tree.dis '(wf-invalid-character-in-node-name, |
23 |
|
wf-invalid-character): New errors (from |MDOM:DOMCore| module). |
24 |
|
(Attr.specified): Setter added. |
25 |
|
(cfg:dtd-default-attributes): New configuration parameter. |
26 |
|
(Document.createEntityReference): Don't check |MDOMX:MDOM_BAD_NAME| |
27 |
|
if |Document.strictErrorChecking| is |false|. |
28 |
|
|
29 |
|
2006-02-15 Wakaba <wakaba@suika.fam.cx> |
30 |
|
|
31 |
|
* XMLParser.dis: Set |allDeclarationsProcessed| |
32 |
|
attribute of the |Document| node. Don't process entity |
33 |
|
and attribute definition list declarations after |
34 |
|
unread parameter entity reference. Warns if an attribute definition is |
35 |
|
ignored (|xp:warning-attribute-definition-ignored|). Set |
36 |
|
flags whether predefined entities are declared or not. |
37 |
|
WFC error |xp:wf-pes-in-internal-subset| is implemented. |
38 |
|
|
39 |
|
2006-02-15 Wakaba <wakaba@suika.fam.cx> |
40 |
|
|
41 |
|
* XMLParser.dis: Issues |xp:error-internal-predefined-entity| error |
42 |
|
if a predefined entity declaration references an external entity. |
43 |
|
Issues |xp:error-malformed-predefined-entity| error if |
44 |
|
a predefined entity declaration defines different thing than |
45 |
|
one as in XML specification. |
46 |
|
Issies |xp:warning-entity-declaration-ignored| warning if |
47 |
|
more than one entity declarations for an entity is found. |
48 |
|
(WFErrDef): Now all well-formedness errors are marked |
49 |
|
as |SEVERITY_FATAL_ERROR|. |
50 |
|
|
51 |
|
* XDoctype.dis (DocumentXDoctype.createDocumentTypeDefinition): Creates |
52 |
|
predefined entity declarations. |
53 |
|
(DocumentXDoctype.createNotation): New method. |
54 |
|
(DocumentTypeDefinition.notations): New attribute. |
55 |
|
(DocumentTypeDefinition.getNotationNode): New method. |
56 |
|
(DocumentTypeDefinition.setNotationNode): New method. |
57 |
|
(newNotationForTest): New code fragment. |
58 |
|
|
59 |
|
* Tree.dis (ManakaiDOMXML:ManakaiDOMNotations): Removed. |
60 |
|
(c:ManakaiDOMNotationMap): New class. |
61 |
|
(c:ManakaiDOMNotationMapArray): New class. |
62 |
|
(Document.allDeclarationsProcessed): New attribute. |
63 |
|
|
64 |
|
* DOMXML.dis (DocumentType.notations): Implemented. |
65 |
|
(Notation): Revised. |
66 |
|
(Notation.ownerDocumentTypeDefinition): New attribute. |
67 |
|
|
68 |
|
2006-02-14 Wakaba <wakaba@suika.fam.cx> |
69 |
|
|
70 |
|
* XMLParser.dis: The |xp:wf-parsed-entity| and the |xp:wf-no-recursion| |
71 |
|
WFC errors are implemented. Reports a |xp:wf-syntax-error| |
72 |
|
if a parameter entity declaration contains |NDATA| keyword. |
73 |
|
(setEmptyEntityState): Set |name| attribute. |
74 |
|
|
75 |
|
* Tree.dis (createEntityReference): Don't enter into inifinite |
76 |
|
loop even if entity replacement tree contains recursive |
77 |
|
reference directly or indirectly. |
78 |
|
|
79 |
|
2006-02-13 Wakaba <wakaba@suika.fam.cx> |
80 |
|
|
81 |
|
* XMLParser.dis (_GeneralEntityReferenceAE): The |xp:wf-entity-declared| |
82 |
|
WFC error is implemented. |
83 |
|
|
84 |
|
2006-02-13 Wakaba <wakaba@suika.fam.cx> |
85 |
|
|
86 |
|
* XMLParser.dis: Set |cfg:clone-entity-reference-subtree| |
87 |
|
configuration parameter |true| during tree construction |
88 |
|
to ensure default attribute value is cloned as is |
89 |
|
including entity reference subtree. |
90 |
|
|
91 |
|
* Tree.dis (cfg:clone-entity-reference-subtree): New configuration |
92 |
|
parameter. |
93 |
|
(Node.cloneNode): The |cfg:clone-entity-reference-subtree| |
94 |
|
configuration parameter support is added. |
95 |
|
|
96 |
|
2006-02-12 Wakaba <wakaba@suika.fam.cx> |
97 |
|
|
98 |
|
* XMLParser.dis (parseString): General |Entity| replacement |
99 |
|
tree is not constructed because of a typo. Clears |EntityReference| |
100 |
|
content before constructing |Entity| replacement tree. |
101 |
|
The |xp:wf-entity-declared| well-formedness constraint |
102 |
|
for entity references in attribute value literal is implemented. |
103 |
|
|
104 |
|
2006-02-11 Wakaba <wakaba@suika.fam.cx> |
105 |
|
|
106 |
|
* XMLParser.dis: |xp:wf-entity-declared| well-formedness |
107 |
|
constaraint for entity references that appear in |
108 |
|
content of elements is implemented. Set |EntityReference.isExpanded| |
109 |
|
attribute. |
110 |
|
(getEmptyEntityState): New code. |
111 |
|
|
112 |
|
* XDoctype.dis (DocumentTypeDefinition.nodeType): Duplicate |
113 |
|
definition is removed. |
114 |
|
|
115 |
|
* DOMXML.dis (Entity.isExternallyDeclared): New attribute. |
116 |
|
(EntityReference.isExpanded): Setter is added. |
117 |
|
|
118 |
|
2006-02-11 Wakaba <wakaba@suika.fam.cx> |
119 |
|
|
120 |
|
* XMLParser.dis: |xp:wf-no-lt-in-attribute-values| |
121 |
|
and |xp:wf-no-external-entity-references| well-formedness |
122 |
|
constraints are implemented. |
123 |
|
|
124 |
|
2006-02-11 Wakaba <wakaba@suika.fam.cx> |
125 |
|
|
126 |
|
* XMLParser.dis ($self->{has_error}): Removed. |
127 |
|
(parseString): Don't throw |DOMLS:PARSE_ERR| if all fatal |
128 |
|
errors (including well-formedness constraint errors) are |
129 |
|
traped by the error handler. |
130 |
|
(PubidLiteral, SystemLiteral): Set |publicId| or |systemId| |
131 |
|
attribute of the node. Reports an error if |publidLiteral| |
132 |
|
contains a non-|pubidChar|. |
133 |
|
|
134 |
|
* XDoctype.dis (d:DeclFeature30): New feature (|fe:XDoctypeDeclaration| |
135 |
|
version |3.0|). |
136 |
|
(ManakaiDOMDocumentTypeDefinition): The class no longer |
137 |
|
inherits |x:ManakaiDOMDocumentType| class. Instead, |
138 |
|
it inherits |d:ManakaiDOMDocumentTypeDeclaration| |
139 |
|
and |t:ManakaiDOMNOde| classes. It still implements |x:DocumentType| |
140 |
|
interface (except unimplemented |notations| and |internalSubset| |
141 |
|
attributes). |
142 |
|
(ManakaiDOMDocumentTypeDefinition.entities): New attribute |
143 |
|
for compatibility with |x:DocumentType| interface. |
144 |
|
(ManakaiDOMDocumentTypeDefinition.lookupPrefix): New method. |
145 |
|
(ManakaiDOMDocumentTypeDefinition.getFeature): New method. |
146 |
|
(ManakaiDOMDocumentTypeDefinition.nodeType, |
147 |
|
ManakaiDOMDocumentTypeDefinition.textContent): New attributes. |
148 |
|
(DocumentTypeDeclaration): New interface. |
149 |
|
|
150 |
|
* Tree.dis (Node/@f:implements): Typos fixed. |
151 |
|
(Node.MUErrorHandler): Missing |last A| statement is added. |
152 |
|
(createDocumentType): Throws an exception if |qualifiedName| |
153 |
|
is illegal. Calls |DocumentTypeDefinition.newObject| |
154 |
|
instead of obsolete |DocumentType.newObject|. |
155 |
|
|
156 |
|
* DOMXML.dis (DocumentType.name, DocumentType.entities, |
157 |
|
DocumentType.publicId, DocumentType.systemId, |
158 |
|
DocumentType.lookupPrefix, DocumentType.getFeature): Now they are defined |
159 |
|
as clones of similar attributes or methods |
160 |
|
in |MDOM:XDoctype| module. |
161 |
|
(DocumentType.newObject): Removed (use |DocumentTypeDefinition.newObject| |
162 |
|
instead). |
163 |
|
(DocumentType.childNodes): Removed (|Node.childNodes| definition |
164 |
|
is used). |
165 |
|
|
166 |
|
2006-02-10 Wakaba <wakaba@suika.fam.cx> |
167 |
|
|
168 |
|
* XMLParser.dis (xp:fatal-xml11-end-of-line-in-xml-declaration): New |
169 |
|
fatal error. |
170 |
|
|
171 |
|
2006-02-09 Wakaba <wakaba@suika.fam.cx> |
172 |
|
|
173 |
|
* XMLParser.dis (CommentDeclaration): |STRING| is now |
174 |
|
defined as a |?default-token|. |
175 |
|
(XMLTests): Tests for |Char - RestrictedChar| matchness, |
176 |
|
comment declarations, cdata sections, and |MSE| in |content| |
177 |
|
added. |
178 |
|
(XMLTests/PerlDef): Bug fixed: |pop| -> |shift|. |
179 |
|
(get-location-from-token): |$token->{location_d}| |
180 |
|
for |?default-token| column counting support added. |
181 |
|
|
182 |
|
* DOMCore.dis (c:erred): It is now a |DISCore:OrderedList| property. |
183 |
|
|
184 |
|
2006-02-08 Wakaba <wakaba@suika.fam.cx> |
185 |
|
|
186 |
|
* Tree.dis (createProcessingInstruction): Don't |
187 |
|
throw |MDOMX:MDOM_BAD_NAME| exception if |Document.strictErrorChecking| |
188 |
|
is |false|. |
189 |
|
|
190 |
|
* XMLParser.dis (parseString): Initializes |$self->{location}|. |
191 |
|
It enables improved error position report. |
192 |
|
(XDO): It now includes |S+| following target name |xml| as |
193 |
|
part of the token. (PI with target starting with |xml| |
194 |
|
was unable to be placed at the beginning of the document entity.) |
195 |
|
(_ProcessingInstruction, _ProcessingInstructionDTD): Creates |
196 |
|
a processing instruction node with |#INVALID| node name |
197 |
|
if target name is not given and recovered from the error. |
198 |
|
(S): Variable |$s| added. |
199 |
|
(XMLTests): Tests for XML declarations and processing |
200 |
|
instructions are added. Prints error type name if unexpected |
201 |
|
error with severity of error or fatal error has been reported. |
202 |
|
Catch unexpected exceptions thrown in parser (different |
203 |
|
from |LSException|), prints its message, and invoke |$test->not_ok| |
204 |
|
for the ease of testing. |
205 |
|
(xp:get-location-from-token): Location values now take |$self->{char}| |
206 |
|
stack into acount. |
207 |
|
|
208 |
|
2006-02-08 Wakaba <wakaba@suika.fam.cx> |
209 |
|
|
210 |
|
* XMLParser.dis (shiftChar): Line and column number counting |
211 |
|
is fixed. Although the DOM Level 3 Core specification |
212 |
|
is unclear about whether the first number is zero or one, |
213 |
|
in most programs the first line is "one" and |
214 |
|
the first column is "one", manakai follows the practice. |
215 |
|
(_XMLDeclaration): Don't set |xmlStandalone| value |
216 |
|
if |standalone| pseudo-attribute value is |no|. XML declaration |
217 |
|
tests (successful cases) added. |
218 |
|
(xp:get-location-from-token): Sets |lineNumber| and |columnNumber| |
219 |
|
properties. |
220 |
|
|
221 |
|
2006-02-08 Wakaba <wakaba@suika.fam.cx> |
222 |
|
|
223 |
|
* XMLParser.dis (XMLTests): Tests for |c:erred| is supported. |
224 |
|
|
225 |
|
2006-02-06 Wakaba <wakaba@suika.fam.cx> |
226 |
|
|
227 |
|
* DOMCore.dis (c:erred): New property. |
228 |
|
(c:DOMErrorType): It should have been a subset |
229 |
|
of |ecore:AnyErrorCode|. |
230 |
|
|
231 |
|
* XMLParser.dis (XMLTests): Empty input tests added. |
232 |
|
|
233 |
|
2006-01-30 Wakaba <wakaba@suika.fam.cx> |
234 |
|
|
235 |
|
* XDoctype.dis (d:Feature): New canonical feature |
236 |
|
name |fe:XDoctype| is added. |
237 |
|
|
238 |
|
* XMLParser.dis: Predefined general entity references |
239 |
|
are implemented. Creates |Entity| nodes from general entities |
240 |
|
declared in internal subset. |Entity| nodes created from internal |
241 |
|
general parsed entities now have replacement tree. |
242 |
|
Sets |cfg:entity-reference-read-only| flag off during |
243 |
|
the tree generation. Some parsing rules use |$self->{doc}| |
244 |
|
rather than |$doc| parameter. Similarly, |$self->{docx}| (document |
245 |
|
node with |fe:XDoctype| feature) and |$self->{dtdef}| are |
246 |
|
introduced. General entity references in attribute value literal |
247 |
|
are supported. |
248 |
|
|
249 |
2006-01-29 Wakaba <wakaba@suika.fam.cx> |
2006-01-29 Wakaba <wakaba@suika.fam.cx> |
250 |
|
|
251 |
* Tree.dis (ManakaiDOM:entity-reference-read-only): Configuration |
* Tree.dis (ManakaiDOM:entity-reference-read-only): Configuration |