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> |
250 |
|
|
251 |
|
* Tree.dis (ManakaiDOM:entity-reference-read-only): Configuration |
252 |
|
parameter name changed to |cfg:entity-reference-read-only|. |
253 |
|
(createEntityReference): Set |c:read-only| flag of |
254 |
|
the created entity reference, too. |
255 |
|
|
256 |
|
* DOMLS.dis (min): New canonical feature name |fe:Min| added. |
257 |
|
|
258 |
|
* GenericLS.dis: Don't refer |DOMMain:DOMString|; use |f:MIString| |
259 |
|
from |DOMFeature| module instead. Use |idl:Object| |
260 |
|
instead of |DOMMain:DOMObject| as well. |
261 |
|
(Generic): New canonical feature name |fe:GenericLS| added. |
262 |
|
(DOMLS:ParserRole, DOMLS:SerializerRole): Their |
263 |
|
canonical name changed to |gls:ParserRole| and |gls:SerializerRole| |
264 |
|
respectively. |
265 |
|
|
266 |
|
* DOMXML.dis (entities, notations): Perl code removed. |
267 |
|
It will be reimplemented using |DocumentTypeDefinition| |
268 |
|
class from |XDoctype| module. |
269 |
|
|
270 |
|
* DOMFeature.dis, DOMCore.dis, DOMMain.dis, DOMXML.dis, |
271 |
|
Tree.dis, DOMLS.dis, GenericLS.dis, ManakaiDOMLS2003.dis, |
272 |
|
SimpleLS.dis: Cleaned up unused definitions. |
273 |
|
|
274 |
|
* DOMCore.dis, DOMLS.dis (CParam): Definitions |
275 |
|
for LS module moved from |DOMCore| module to |DOMLS| module. |
276 |
|
This change makes |DOMCore| to |DOMLS| dependency removed. |
277 |
|
|
278 |
|
* .cvsignore (.html.pm, .ls.pm): Removed. |
279 |
|
|
280 |
|
* Makefile (.html.pm, .ls.pm): Removed. |
281 |
|
(feature.dae): Include |GenericLS| module. |
282 |
|
(core.dae): Don't include |DOMLS| and |GenericLS| module. |
283 |
|
(ls.dae): Include |DOMLS| module. |
284 |
|
|
285 |
|
2006-01-29 Wakaba <wakaba@suika.fam.cx> |
286 |
|
|
287 |
|
* XMLParser.dis: Tests on default attributes and their |specified| |
288 |
|
attribute are added. |
289 |
|
|
290 |
|
* XDoctype.dis (createGeneralEntity): New method. |
291 |
|
(generalEntities): New attribute. |
292 |
|
(getGeneralEntityNode, setGeneralEntityNode): New methods. |
293 |
|
|
294 |
|
* Tree.dis (ManakaiDOMEntities): Removed. |
295 |
|
(ManakaiDOMEntityMap): New class. |
296 |
|
(ManakaiDOM:entity-reference-read-only): New configuration parameter. |
297 |
|
(createEntityReference): If there is a corresponding |Entity| |
298 |
|
node in the document type definition, then copies its |
299 |
|
subtree. |
300 |
|
|
301 |
|
* DOMXML.dis (Entity): Documentation updated. |
302 |
|
(publicId, systemId, notationName, xmlEncoding, |
303 |
|
xmlVersion): These attributes are now settable |
304 |
|
if |ManakaiDOM:ManakaiDOMLatest| mode. |
305 |
|
(hasReplacementTree): New attribute for |ManakaiDOM:ManakaiDOMLatest| |
306 |
|
mode. |
307 |
|
(ownerDocumentTypeDefinition): New attribute |
308 |
|
for |ManakaiDOM:ManakaiDOMLatest| mode. |
309 |
|
(isExpanded): New attribute for |ManakaiDOM:ManakaiDOMLatest| mode. |
310 |
|
|
311 |
|
2006-01-28 Wakaba <wakaba@suika.fam.cx> |
312 |
|
|
313 |
|
* DOMCore.dis (ErrDef): Missing |ecore:textFormatter| property added. |
314 |
|
|
315 |
|
* DOMMain.dis (ErrDef): Missing |ecore:textFormatter| property added. |
316 |
|
|
317 |
|
* Tree.dis (ErrDef): Missing |ecore:textFormatter| property added. |
318 |
|
(ManakaiDOMAttributes): Removed. |
319 |
|
(ManakaiDOMAttrMap): New class. |
320 |
|
(ManakaiDOMAttrMapArray): New class. |
321 |
|
(namespaceURI): Bug to return a string representation |
322 |
|
of a reference to the namespace URI string is fixed. |
323 |
|
(selectAttrNodeObject, selectAttrNodeObjectNodeNS): Reimplemented. |
324 |
|
(removeAttribute, removeAttributeNS): DTD default attributes |
325 |
|
are supported. Don't throw |NO_MODIFICATION_ALLOWED_ERR| |
326 |
|
if there is no attribute node. |
327 |
|
(createElement, createElementNS): DTD default attributes are supported. |
328 |
|
(setAttributeNode): Reimplemented. |
329 |
|
|
330 |
|
2006-01-27 Wakaba <wakaba@suika.fam.cx> |
331 |
|
|
332 |
|
* DOMCore.dis (ManakaiDOMDTDTypeInfo): New class. |
333 |
|
|
334 |
|
* Tree.dis (STORESIZE): Index bound bug fixed. |
335 |
|
(Attr.value): Redefined to consist with |AttributeDefinition.nodeValue|. |
336 |
|
(schemaTypeInfo): Implemented for XML DTD. |
337 |
|
(isId): Returns |true| if [attribute type] is |ID|. |
338 |
|
(setAttribute, setAttributeNS): Sets [attribute type] |
339 |
|
of the newly created |Attr| node (if any) when attribute |
340 |
|
definition is available. |
341 |
|
(doctype, documentElement): Reimplemented with tests. |
342 |
|
|
343 |
|
* XMLParser.dis: Sets [attribute type] information |
344 |
|
to created |Attr| nodes. Normalize namespace URIs |
345 |
|
when such information are available (unlikely but legal). |
346 |
|
(_HexadecimalCharacterReference): Number to character |
347 |
|
convertion bug fixed. |
348 |
|
(_DocumentTypeDeclaration): Sets |schema-type| |
349 |
|
configuration parameter to XML DTD URI. |
350 |
|
|
351 |
|
2006-01-26 Wakaba <wakaba@suika.fam.cx> |
352 |
|
|
353 |
|
* XMLParser.dis (_AttlistDeclaration): Now it can generate |
354 |
|
attribute definition nodes. |
355 |
|
|
356 |
|
* XDoctype.dis: |UNKNOWN_ATTR| is renamed as |NO_TYPE_ATTR| |
357 |
|
and another |UNKNOWN_ATTR| constant is introduced |
358 |
|
for consistency with XML Infoset. |
359 |
|
|
360 |
|
* DOMCore.dis (TypeInfo): Documentation updated. |
361 |
|
|
362 |
|
2006-01-26 Wakaba <wakaba@suika.fam.cx> |
363 |
|
|
364 |
|
* XDoctype.dis: A bug in test code fixed. |
365 |
|
|
366 |
|
* Tree.dis (NamedNodeMap): Element type or attribute |
367 |
|
definition named node maps now can be dereferenced |
368 |
|
as if they are array or hash references. |
369 |
|
(removeNamedItem, item, ___report_error): Implemented for element type |
370 |
|
or attribute definitions. |
371 |
|
(length): Tests added. |
372 |
|
(NamedNodeMapArray): New classes. |
373 |
|
|
374 |
|
2006-01-25 Wakaba <wakaba@suika.fam.cx> |
375 |
|
|
376 |
|
* XDoctype.dis (setElementTypeDefinitionNode, |
377 |
|
setAttributeDefinitionNode): Throws |c:INUSE_DEFINITION_ERR| |
378 |
|
if the new node is already used for another definition. |
379 |
|
(DocumentTypeDefinition, ElementTypeDefinition): Node |
380 |
|
property name was incorrect. |
381 |
|
(elementTypes, attributeDefinitions): Checks to |
382 |
|
ensure the collection is empty added. |
383 |
|
|
384 |
|
* Tree.dis: Property name typos fixed. |
385 |
|
(setNamedItem, setAttributeNode): Don't return any node |
386 |
|
if it replace itself. |
387 |
|
(c:userDeterminedId): Missing definition added. |
388 |
|
|
389 |
|
* DOMXML.dis (Notation): Missing property specification |
390 |
|
of|c:ownerDocument| as |mn:xrefnode0| is added. |
391 |
|
|
392 |
2006-01-23 Wakaba <wakaba@suika.fam.cx> |
2006-01-23 Wakaba <wakaba@suika.fam.cx> |
393 |
|
|
394 |
* DOMCore.dis (Test): Missing argument added. |
* DOMCore.dis (Test): Missing argument added. |