Closed
Bug 128225
Opened 23 years ago
Closed 21 years ago
Missing IDs in mathml.dtd
Categories
(Core :: MathML, defect)
Core
MathML
Tracking
()
RESOLVED
FIXED
mozilla1.6alpha
People
(Reporter: rbs, Assigned: hsivonen)
Details
Attachments
(2 files)
In bug 113400 comment #5 From Henri Sivonen 2002-01-13 06:14 -------
[...]
I took the official DTD (372 KB) and removed all the declarations and comments I
thought were uninteresting for a non-validating system. I ended up with 45 KB
exclusive of the character entity declarations that already exist in Mozilla's
mathml.dtd. However, I'm getting syntax error but I haven't yet figured out why.
[...]
---------------
Got any luck since then? This would be a good thing to have for m1.0. It looks
alright to me to just have the IDs than aim at further extras and end up with
nothing at all in the allocated schedules of the milestones.
Assignee | ||
Updated•23 years ago
|
Status: NEW → ASSIGNED
Assignee | ||
Comment 1•23 years ago
|
||
Assignee | ||
Comment 2•23 years ago
|
||
Sorry, but I can't figure out why the I'm getting an error. I have a minimized
test case at http://www.hut.fi/~hsivonen/test/entity-entity.xml
The problematic declaration comes from the W3C's DTD.
Assignee | ||
Comment 3•23 years ago
|
||
Expat doesn't like it when an entity parameter declaration depends on another
parameter entiry declaration. Then, the element declarations in which the IDness
of id is declared, rely on parameter entities declared in the problematic way.
The idea is that the document author can tweak a couple of declarations in the
internal subset and have the entire external subset parsed differently. This
would break if I hard-coded the namespace prefix etc.
Any ideas on how to proceed from here?
Comment 4•21 years ago
|
||
hsivonen: I have a testcase using the XHTML 1.1 + MathML 2.0 DTD from W3C
directly, where DOM Core Level 1's document.getElementById() breaks, trying to
get a MathML element by its id attribute. No parsing errors; a complete copy of
the DTD. Is this the same bug as you report here, or another bug?
Comment 5•21 years ago
|
||
Isn't this really an XML bug, then?
This testcase shows that getElementById() works for a MathML element if the
ID-ness of an attribute is declared in the DTD
The actual bug seems to be that Expat does not handle parameter entity
references inside other entity references. If you try to do that in the internal
subset (http://www.hut.fi/~hsivonen/test/entity-entity.xml), you get a parser
error. If you do that in an external DTD, we silently fail.
Now, this bug can be solved independent of the Expat changes by making sure the
DTD does not use parameter entity references inside entity references. I advice
doing this, since it is unclear when we can fix Expat.
I filed bug 208972 for the Expat issue.
Fixed via bug 208744.
bz simply hardcoded 'id' for MathML elements, which is spec-compliant. Whether
the 'id' attributed is hard-coded or added on the fly from an external DTD file
is immaterial for MathML. Marking FIXED.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.6alpha
You need to log in
before you can comment on or make changes to this bug.
Description
•