Mixed case SVG element names
If mixed case SVG elements appear in the static HTML (here
svg:textArea@) their names get translated to lower case, but still show up in Opera 11.62 [@id_27@]. If later on copied over with @xsl:copy-of the
svg:textArea does not display anymore. Dynamically added elements get their names translated to lower case and do not show up in the browser if written with a NS prefix, but display normally if added with a default NS [compare
id_91@]. The @svg:text element shows none of these problems [@id_69@].
Updated by Philip Fearon over 11 years ago
- Status changed from New to In Progress
- Assignee set to Philip Fearon
This issue is the same as #1483 - I think you're resubmitted this as a bug because the beta 0.2 release doesn't fix the issue as you had hoped.
In #1483 I state:
The HTML5 specification doesn't support the use of such prefixes, instead the SVG namespace should be declared as the default namespace for top level SVG elements embedded within HTML. Saxon-CE has now been (for the next release) amended to conform to this spec when writing to the HTML or XHTML DOM - thus fixing the Opera issue at the same time.
To be more specific on this - Saxon-CE was fixed to conform to the XSLT specification so that if you use no prefix for the SVG namespace elements in your XSLT then this is reflected in what is written to the DOM.
I suspect the difficulty is because you'd like to use the
svg prefix in literal result elements in your XSLT but Opera insists on you using no prefix if you want to preserve the case of names. If this is the case, you might be able to use the xsl:namespace-alias instruction to get to a solution that is more workable. Or, perhaps - for the future - Saxon-CE should have an xsl:output method setting (html5?) that detects SVG namespaced elements and always ensures they have no prefix when written to the DOM?
Please register to edit this issue