Re: [xsl] Problem with extracting text from svg file

Subject: Re: [xsl] Problem with extracting text from svg file
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Tue, 09 Oct 2012 17:55:56 -0400
At 2012-10-09 16:27 -0500, russurquhart1@xxxxxxxxxxx wrote:
I am trying to get a small xslt to get the d attribute value of an svg path element. My code is the following:


<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.0" xmlns:svg="http://www.w3.org/2000/svg"; > <xsl:output method="text" indent="yes" />

    <xsl:template match="svg:path">
        <xsl:value-of select="@d"/>
            <xsl:apply-templates />

</xsl:template>

</xsl:stylesheet>


The svg file has input of the following:


<path d="M145 20 v 374M210.16666666666669 20 v 374M275.33333333333337 20 v 374M340.50000000000006 20 v 374M405.66666666666674 20 v 374M470.8333333333334 20 v 374M536.0000000000001 20 v 374" class="gridlines"/>

When i try and run the xslt, with the Saxon HE version, i get the following error:

Error
   java.net.UnknownHostException: www.w3.org
Transformation failed: Run-time errors were reported

I understand that working with namespaces can be tricky, but i just wanted to get the text out.

Your error has nothing to do with namespaces because namespaces do not trigger any access to the web that would need to dereference the host.


I suspect you have a DTD reference in your source file. I see no reason why your stylesheet would access the web.

If anyone could shine some light on this, i would appreciate it!

I've copied your code below, adding a document element for your SVG, and it works just fine with saxon9he.


You'll have to look into your SVG source file for the problem.

I hope this helps.

. . . . . . . Ken

T:\ftemp>type russ.xml
<svg xmlns="http://www.w3.org/2000/svg";>
<path d="M145 20 v 374M210.16666666666669 20 v 374M275.33333333333337 20 v 374M340.50000000000006 20 v 374M405.66666666666674 20 v 374M470.8333333333334 20 v 374M536.0000000000001 20 v 374" class="gridlines"/>
</svg>


T:\ftemp>saxon9he -s:russ.xml -xsl:russ.xsl
Warning: at xsl:stylesheet on line 3 column 45 of russ.xsl:
  Running an XSLT 1 stylesheet with an XSLT 2 processor

M145 20 v 374M210.16666666666669 20 v 374M275.33333333333337 20 v 374M340.50000000000006 20 v 374M405.66666666666674 20 v 374M470.8333333333334 20 v 374M536.0000000000001 20 v 374

T:\ftemp>type russ.xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; version="1.0"
    xmlns:svg="http://www.w3.org/2000/svg"; >
    <xsl:output  method="text" indent="yes" />

    <xsl:template match="svg:path">
        <xsl:value-of select="@d"/>
            <xsl:apply-templates />

</xsl:template>

</xsl:stylesheet>

T:\ftemp>


-- Contact us for world-wide XML consulting and instructor-led training Free 5-hour lecture: http://www.CraneSoftwrights.com/links/udemy.htm Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Google+ profile: https://plus.google.com/116832879756988317389/about Legal business disclaimers: http://www.CraneSoftwrights.com/legal

Current Thread