Subject: | xlstproc related test failing with recent versions |
Hi,
some tests are failing with recent versions of xslt proc
reason is newer libxml releases are more strict
and do not allow attributes named "xmlns". Which is explicitly
forbiden by XSLT specification.
http://www.w3.org/TR/xslt#creating-attributes
Error is :
t/t270oborel_in_owl.t .... compilation error: file GO/xsl/oboxml_to_owl.xsl line 818 element attribute
xsl:attribute: The attribute name 'xmlns' is not allowed.
compilation error: file GO/xsl/oboxml_to_owl.xsl line 863 element attribute
XSLT-attribute: The attribute 'name' is missing.
problem running: xsltproc GO/xsl/oboxml_to_owl.xsl TMP.23326.go-with-local-id-mapping.obo-1.xml > TMP.23326.go-with-local-id-mapping.obo-2.xml at GO/Parsers/base_parser.pm line 422.
GO::Parsers::base_parser::xsltproc('GO/xsl/oboxml_to_owl.xsl', 'TMP.23326.go-with-local-id-mapping.obo-1.xml', 'TMP.23326.go-with-local-id-mapping.obo-2.xml') called at GO/Parsers/base_parser.pm line 388
GO::Parsers::base_parser::parse('GO::Parsers::obo_parser=HASH(0x2512d48)', './t/data/go-with-local-id-mapping.obo') called at t/t270oborel_in_owl.t line 44
t/t270oborel_in_owl.t .... Dubious, test returned 5 (wstat 1280, 0x500)
Attached a patch to fix this (only renaming xmlns name attribute to goxmlns).
Subject: | go-perl.patch |
--- a/GO/xsl/oboxml_to_owl.xsl
+++ b/GO/xsl/oboxml_to_owl.xsl
@@ -815,7 +815,7 @@
</xsl:variable>
<xsl:element name="{$property}">
<xsl:if test="contains(type,':')">
- <xsl:attribute name="xmlns">
+ <xsl:attribute name="goxmlns">
<xsl:variable name="ns">
<xsl:value-of select="substring-before(type,':')"/>
</xsl:variable>
@@ -860,7 +860,7 @@
</xsl:variable>
<xsl:element name="{$property}">
<xsl:if test="contains(type,':')">
- <xsl:attribute name="xmlns">
+ <xsl:attribute name="goxmlns">
<xsl:variable name="ns">
<xsl:value-of select="substring-before(type,':')"/>
</xsl:variable>