我想知道,xml文檔中是否存在xmlns url的真正含義?我曾參考link。現在當我將xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
更改爲其他內容時,它停止工作。 w3c表示命名空間名稱(OR URL)僅用於區分xml標籤。比爲什麼改變url後它不工作。xml文檔中XMLNS URL的含義是什麼
,所以我想,可能是它有事情做與URL,所以試圖localy(不包括互聯網)..看下面的例子..
XML文檔。 (first.xml)
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="first.xsl"?>
<!-- Edited by XMLSpy® -->
<catalog>
<cd>
<title>Unchain my heart</title>
<artist>Joe Cocker</artist>
<country>USA</country>
<company>EMI</company>
<price>8.20</price>
<year>1987</year>
</cd>
<cd>
<title>Pavarotti Gala Concert</title>
<artist>Luciano Pavarotti</artist>
<country>UK</country>
<company>DECCA</company>
<price>9.90</price>
<year>1991</year>
</cd>
<cd>
<title>The dock of the bay</title>
<artist>Otis Redding</artist>
<country>USA</country>
<company>Atlantic</company>
<price>7.90</price>
<year>1987</year>
</cd>
</catalog>
XSLT文檔(first.xsl)
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited by XMLSpy® -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
所以,它的工作的罰款localy。但如果我將xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
更改爲xmlns:xsl="http://www.abc.com"
之類的內容,它會在瀏覽器中出現錯誤。
Error loading stylesheet: Parsing an XSLT stylesheet failed.
所以,唯一的問題是,這個網址在xmlns中有沒有真正的含義。如果是的話,它比爲什麼沒有互聯網工作,而不是通過更改xsl中的網址。
感謝您的回答,您所提到的命名空間,是像Java命名空間?這些名稱空間已經可以在瀏覽器中使用了嗎? – hardik 2012-07-23 06:22:58
@Hardik:與其他語言的命名空間有一些相似之處,但是XML命名空間不是*分層的 - 它們只是一組扁平的字符串。至於「瀏覽器中的命名空間的可用性」,我們通常將這種*瀏覽器支持*稱爲一種或另一種語言。例如,實現HTML5的瀏覽器支持SVG和MathML,並且如果XML文檔以特定PI(處理指令)開頭,則允許在XML文件/文檔上執行XSLT。 – 2012-07-23 11:53:43