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