Hi Thomas,

I think I have finally found the problem.

The class SVGOMDocument implements the method
isId(Attr node) in such a way that the id nodes generated by the dom4j writer are not recognized as such: It checks for 'null'-Namespaces, but fails to check for the empty string '""'.

I have modified the line in question, the method (around line 305) now being:
    public boolean isId(Attr node) {
        if (!(node.getNamespaceURI()            
                ==null||node.getNamespaceURI().equals(""))){
                return false;
        }
        return SVG_ID_ATTRIBUTE.equals(node.getNodeName());
    }

After this modification, the table of IDs is correctly created and filled.

Trouble's not gone yet, though: In the former problem's wake follows
an error about 'circle' elements requiring the 'r' attribute.
Again, Batik requires the Namespace URI to be 'null' (by calling
e.getAttributeNS(null, SVG_R_ATTRIBUTE)) while it is in fact the empty string.

I will look for a way to change this.
Thanks for your support so far
-Urs

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to