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