Subject: RE: [xsl] GML transformation From: "Michael Kay" <mhk@xxxxxxxxx> Date: Fri, 21 May 2004 16:30:16 +0100 |
> -----Original Message----- > From: sarra hamdi [mailto:hacker249@xxxxxxxxx] > Sent: 21 May 2004 12:45 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] GML transformation > > Hello, > I have a valid GML file descriped follow, it was validated by > xmlspy. I want to transform it to SVG format using xslt but I > m newbie in xsl language. > follow the xsl file that I writed but it cant give me a good result . > from this can any one see this two file to help me to > represent the gml file. > thanks advanced. > ------------------------------------------------ > the gml file > ------------------------------------------------ > > <?xml version="1.0" encoding="UTF-8"?> > <!-- File: cambridge.xml --> > <CityModel xmlns="http://www.opengis.net/examples" > xmlns:gml="http://www.opengis.net/gml" > xmlns:xlink="http://www.w3.org/1999/xlink" > xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" > > xsi:schemaLocation="http://www.opengis.net/examples > /u/pkg/gml4j/test/schemas/City.xsd"> > > <gml:name>Cambridge</gml:name> > <gml:boundedBy> > <gml:Box srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> > <gml:coordinates>0.0 0.0,100.0 100.0</gml:coordinates> > </gml:Box> > </gml:boundedBy> > > <cityMember> > <River> > <gml:description>The river that runs through > Cambridge.</gml:description> > <gml:name>Cam</gml:name> > <gml:centerLineOf> > <gml:LineString > srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> > <gml:coordinates>0 50,70 60,100 50</gml:coordinates> > </gml:LineString> > </gml:centerLineOf> > </River> > </cityMember> > > <cityMember> > <Road> > <gml:name>M11</gml:name> > <linearGeometry> > <gml:LineString > srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> > <gml:coordinates>0 5.0,20.6 10.7,80.5 > 60.9</gml:coordinates> > </gml:LineString> > </linearGeometry> > <classification>motorway</classification> > <number>11</number> > </Road> > </cityMember> > > <cityMember xlink:type="simple" xlink:title="Trinity Lane" > xlink:href="http://www.foo.net/cgi-bin/wfs?FeatureID=C10239" > > gml:remoteSchema="city.xsd#xpointer(//complexType[@name='RoadT > ype'])"/> > <cityMember> > <Mountain> > <gml:description>World's highest mountain is in > Nepal!</gml:description> > <gml:name>Everest</gml:name> > <elevation>8850</elevation> > </Mountain> > </cityMember> > <dateCreated>2000-11</dateCreated> > </CityModel> > > > ------------------------------------------------ > the xsl file > ------------------------------------------------ I've annotated this to show you some of the things that are wrong with your code, but I haven't tried to correct your errors because I simply can't see what you are aiming at. <?xml version="1.0"?> > <!DOCTYPE xsl:stylesheet SYSTEM "C:\Documents and > Settings\ines\Bureau\exemple3\Untitled2.dtd"> The location of the DTD must be a URI, not a filename. Some products let you get away with this error, but they shouldn't. > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > xmlns:xlink="http://www.w3.org/TR/xlink" > xmlns:gml="http://www.opengis.net/gml" > xmlns:redirect="org.apache.xalan.xslt.extensions.Redirect" > xmlns:mur="murmur" extension-element-prefixes="mur"> > <xsl:output method="xml" > doctype-system="D:\mesrecherchesmastere\svg\DTD\svg10.dtd" > doctype-public="-//W3C//DTD SVG 20000303 Stylable//EN"/> > <xsl:variable name="boxCoord" select="//gml:Box/gml:coordinates/."/> The trailing "/." is noise and should be removed. > <xsl:template match="//gml:centerLineOf/gml:LineString/gml:coordinates"> The leading "//" is noise and should be removed. > <xsl:variable name="clist" select="."/> > <xsl:variable name="tclist" select="normalize-space($clist)"/> > <xsl:template match="/"> You can't have one template rule inside another. I don't know what you are trying to achieve here. > <xsl:variable name="boxCoord"></xsl:variable> This variable will have a value that is always a result tree fragment containing an empty string, which doesn't seem very useful. > <xsl:template match="/"> Another nested template! You appear to be confused. > <svg xml:space="preserve" viewBox="{$boxCoord}"> > <xsl:apply-templates/> > </svg> > </xsl:template> > </xsl:template> > </xsl:template> > </xsl:stylesheet> > Michael Kay
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] GML transformation, sarra hamdi | Thread | RE: [xsl] GML transformation, cknell |
RE: [xsl] Invalid character referen, Michael Kay | Date | RE: [xsl] Setting Base URL For Reso, Michael Kay |
Month |