On Jan 24, 2007, at 9:51 PM, Jacob Kjome wrote: <documentClass deferParsing="true" dom="xerces"/> or <documentClass deferParsing="true" dom="lazydom"/>
<!ATTLIST documentClass dom (lazydom|xerces|generic|xhtml|wml|voicexml|chtml) #IMPLIED>
See the xmlc-1.1.dtd [1].
The first 3 are valid for the HTML DOM, if your document is HTML ("generic" is a synonym for "xerces"). If you don't set this, then you are using "lazydom" by default, which would mean you are already using the HTML DOM. You can also verify by calling getClass().getName() on one of your document nodes.
When I try xerces and lazydom, my nodes end up being org.enhydra.apache.xerces.dom.ElementNSImpl and org.enhydra.xml.lazydom.LazyElementNS respectfully. But I'm referring to nodes by the generic (standard?) interface, org.w3c.dom.html.HTMLElement (and XHTMLElement), all over my code, and neither of the two previously mentioned implementations actually implement that interface. What's up with that? Is there a more generic interface that I should be using? I mean, the whole point of interfaces is that it allows you to switch out various implementations without changing your code. Why are these ElementNSImpl and LazyElementNS not properly(?) implementing the W3C interface?
If changing the dom implementation is really the solution, I suppose I could do a project-wide search-n-replace to change to whatever interface the new implementation prefers, but gross!
I'll try your regression suggestion later today. I spent a few hours yesterday reorganizing how I'm using my jars, so it'll be easier now.
Erik |
--
You receive this message as a subscriber of the xmlc@xxxxxxxxxxxxx mailing list.
To unsubscribe:
mailto:xmlc-unsubscribe@xxxxxxxxxxxxx
For general help:
mailto:sympa@xxxxxxxxxxxxx?subject=help
ObjectWeb mailing lists service home page:
http://www.objectweb.org/wws
|