проблемы с выводом значения xml из-за пространства имен - PullRequest
0 голосов
/ 14 февраля 2011

xml код

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="MyXmlTransformer.xsl"?>
<JMO_obsList xmlns="urn:metoc:jmcbl:jmibl">
                <urn:JMO_obs urn:observationTime ="20110118150000" urn:platformID="A001" urn:reporTypeCode="AUTO"
                              urn:HorizontalDatum="WGE" urn:verticalDatum="MSL"  urn:stationMode="0"
                                      urn:networkType="PTDS" xmlns:urn="urn:metoc:jmcbl:jmcbl:jmibl">
       <JMO_surfaceObs urn:stationPressure ="998.308" urn:airTemperature="28.56"
                              urn:windDirection="320" urn:windSpeed="3.807"/>
                     <urn:JMO_precipitation urn:PrecipAmount="6.858" urn:observationPeriod="60"
                              urn:precipType="L" urn:occcurenceID="1"/>
    </urn:JMO_obs>
 </JMO_obsList> 

xslt код

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">



<xsl:template match="/">

<html>

  <body>
   <b>METAR</b>
   <br/> 
<span style="color:blue">
   <xsl:value-of select="JMO_obsList/JMO_surfaceObs/windSpeed"/>
</span><br/>

<span style="color:blue">
   <xsl:value-of select="JMO_obsList/JMO_surfaceObs/stationPressure"/>
</span><br/>

<span style="color:blue">
   <xsl:value-of select="JMO_obsList/JMO_Obs/observationTime"/>
</span><br/>

<span style="color:blue">
   <xsl:value-of select="JMO_obsList/JMO_precipitation/PrecipAmount"/>
</span><br/>



  </body>

</html>  

</xsl:template>

</xsl:stylesheet>

1 Ответ

0 голосов
/ 14 февраля 2011

В вашей таблице стилей вы должны будете определить префиксы для пространства имен «urn: metoc: jmcbl: jmibl» и urn: metoc: jmcbl: jmcbl: jmibl и использовать их для явной квалификации ссылок на JMO_obsList и другие элементы.Кроме того, ссылки на windSpeed ​​и другие атрибуты XML должны указываться с помощью атрибута: axis

Пример полного объявления значения:

<span style="color:blue">
   <xsl:value-of xmlns:ns1="urn:metoc:jmcbl:jmibl" 
   xmlns:ns2="urn:metoc:jmcbl:jmcbl:jmibl"
   select="ns1:JMO_obsList/ns2:JMO_obs/ns1:JMO_surfaceObs/@ns2:stationPressure"/>
</span>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...