我創建了一個XML文件,併成功通過xsd模式驗證它,然後創建了一個xslt文件,將xml文件中的數據轉換爲表格 ,但每次嘗試將其打開到瀏覽器中時,數據顯示在不一樣的線對錶,我敢肯定,我的代碼是正確的,我不知道爲什麼它不工作,這裏是3個文件: https://www.dropbox.com/sh/gggkh4wg94simrl/2GbiHAGkVFXML操作
XML文件:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="XSLT_XMLToHTML.xml"?>
<Services>
<Service WsdlUrl="http://venus.eas.asu.edu/WSRepository/Services/BasicThreeSvc/Service.svc" TryItUrl="">
<Name>ABasic Three in SVC</Name>
<Provider>http://venus.eas.asu.edu</Provider>
<Category>SVC</Category>
<Operations>
<Operation>
<Name>HelloWorld</Name>
<MsgIn>IService_HelloWorld_InputMessage</MsgIn>
<MsgOut>Service_HelloWorld_OutputMessage</MsgOut>
</Operation>
<Operation>
<Name>PiValue</Name>
<MsgIn>IService_PiValue_InputMessage</MsgIn>
<MsgOut>IService_PiValue_OutputMessage</MsgOut>
</Operation>
<Operation>
<Name>absValue</Name>
<MsgIn>IService_absValue_InputMessage</MsgIn>
<MsgOut>IService_absValue_OutputMessage</MsgOut>
</Operation>
</Operations>
</Service>
<Service WsdlUrl="http://venus.eas.asu.edu/WSRepository/Services/EncryptionWcf/Service.svc?wsdl">
<Name>Crypto service in SVC</Name>
<Provider>http://venus.eas.asu.edu/</Provider>
<Category>SVC</Category>
<Operations>
<Operation>
<Name>Encrypt</Name>
<MsgIn>IService_Encrypt_InputMessage</MsgIn>
<MsgOut>IService_Encrypt_OutputMessage</MsgOut>
</Operation>
<Operation>
<Name>Decrypt</Name>
<MsgIn>IService_Decrypt_InputMessage</MsgIn>
<MsgOut>IService_Decrypt_OutputMessage</MsgOut>
</Operation>
</Operations>
</Service>
<Service WsdlUrl="http://venus.eas.asu.edu/WSRepository/Services/WFImage/WFService/Service1.xamlx?wsdl">
<Name>Image verifier in workflow</Name>
<Provider>http://venus.eas.asu.edu/</Provider>
<Category>xamlx</Category>
<Operations>
<Operation>
<Name>GetImage</Name>
<MsgIn>IImage_GetImage_InputMessage</MsgIn>
<MsgOut>IImage_GetImage_OutputMessage</MsgOut>
</Operation>
<Operation>
<Name>IImage_GetImage_InputMessage</Name>
<MsgIn></MsgIn>
<MsgOut></MsgOut>
</Operation>
<Operation>
<Name>IImage_GetImage_OutputMessage</Name>
<MsgIn></MsgIn>
<MsgOut></MsgOut>
</Operation>
<Operation>
<Name>Reboot</Name>
<MsgIn>IReboot_Reboot_InputMessage</MsgIn>
<MsgOut>IReboot_Reboot_OutputMessage</MsgOut>
</Operation>
</Operations>
</Service>
<Service WsdlUrl="http://venus.eas.asu.edu/WSRepository/Services/Encryption/Service.asmx">
<Name>Service</Name>
<Provider>http://venus.eas.asu.edu</Provider>
<Category>asmx</Category>
<Operations>
<Operation>
<Name>Encrypt</Name>
<MsgIn>string</MsgIn>
<MsgOut>string</MsgOut>
</Operation>
<Operation>
<Name>Decrypt</Name>
<MsgIn>string</MsgIn>
<MsgOut>string</MsgOut>
</Operation>
</Operations>
</Service>
<Service WsdlUrl="http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl" >
<Name>CalculatorServiceServlet</Name>
<Provider>http://graphical.weather.gov/</Provider>
<Category>PHP</Category>
<Operations>
<Operation>
<Name>NDFDgen</Name>
<MsgIn>URL</MsgIn>
<MsgOut>URL</MsgOut>
</Operation>
<Operation>
<Name>LatLonListSubgrid</Name>
<MsgIn>URL</MsgIn>
<MsgOut>URL</MsgOut>
</Operation>
<Operation>
<Name>LatLonListSubgrid</Name>
<MsgIn>URL</MsgIn>
<MsgOut>URL</MsgOut>
</Operation>
<Operation>
<Name>LatLonListLine</Name>
<MsgIn>URL</MsgIn>
<MsgOut>URL</MsgOut>
</Operation>
</Operations>
</Service>
<Service WsdlUrl="http://www.ebi.ac.uk/webservices/whatizit/ws?wsdl" >
<Name>pipelineName</Name>
<Provider>http://www.ebi.ac.uk/</Provider>
<Category>JAVA</Category>
<Operations>
<Operation>
<Name>contact</Name>
<MsgIn>contact</MsgIn>
<MsgOut>contactResponse</MsgOut>
</Operation>
<Operation>
<Name>getPipelinesStatus</Name>
<MsgIn>getPipelinesStatus</MsgIn>
<MsgOut>getPipelinesStatusResponse</MsgOut>
</Operation>
<Operation>
<Name>queryPmid</Name>
<MsgIn>queryPmid</MsgIn>
<MsgOut>WhatizitException</MsgOut>
</Operation>
</Operations>
</Service>
</Services>
XSL文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output omit-xml-declaration="yes" indent="yes" />
<xsl:template match="node()|@*" />
<xsl:template match="/Services">
<html>
<head>
<title>XSLT example</title>
</head>
<body>
<xsl:apply-templates />
</body>
</html>
</xsl:template>
<xsl:template match="Service">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="Operations">
<table>
<thead>
<tr>
<td>Name</td>
<td>Description</td>
<td>Type</td>
</tr>
</thead>
<tbody>
<xsl:apply-templates />
</tbody>
</table>
</xsl:template>
<xsl:template match="Opertaion">
<!-- [sic] -->
<xsl:variable name="service" select="ancestor::Service" />
<tr>
<td>
<xsl:value-of select="$service/Name" />
</td>
<td>
<xsl:value-of select="Name" />
</td>
<td>
<xsl:value-of select="$service/Category" />
</td>
</tr>
</xsl:template>
</xsl:transform>
問題解決了,最後一件事,我無法在瀏覽器中看到邊框,它應該沒有它們? – user1863359
您尚未在輸出的HTML中指定任何關於邊框的內容。如果您將其更改爲輸出'
@TimC,OP直接從[這個答案](http://stackoverflow.com/a/19713250/4525)發佈了XSLT。在這個問題中,示例XML被拼寫錯誤,因此是「sic」。 – harpo
相關問題