我使用xsl處理xsd時遇到問題。我的XSD文件開始:使用不帶名稱空間的xsl處理xsd
<schema targetNamespace="http://www.bleble.com"
xmlns="http://www.w3.org/2001/XMLSchema">
<complexType name="blabla">
...
所以沒有命名空間通過XSL來識別標籤。
我不能修改xsd文件,因爲有很多代碼和很多文件,所以唯一可行的方法是創建一個合適的xsl轉換文件。
我一直在嘗試添加命名空間:
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
而不將其添加到標籤:
<complexType name="blabla">
,但它不是用XML標準有效。
感謝您的幫助!
你需要更清楚你嘗試過的東西。你的意思是你添加了xmlns:xsd命名空間前綴聲明*到你的XSL樣式表*? 「沒有將它添加到標籤中」意味着什麼......沒有在XPath表達式中使用名稱空間前綴? 「這是無效的」是什麼意思 - 請顯示您認爲無效的代碼(在更多情況下),並告訴是什麼讓您認爲它無效。您展示的名稱空間前綴聲明肯定是格式良好的,並且不會使XSL樣式表「無效」。 – LarsH 2012-07-11 15:08:52
此外,如果區分「名稱空間」和「名稱空間前綴」和「名稱空間前綴聲明」,而不是將它們全部命名爲「名稱空間」,則有關此主題的問題和解答將更容易理解。例如。當你說「沒有命名空間」時,這是不正確的。顯然你的意思是「沒有名稱空間前綴」。這可能是因爲你不熟悉命名空間聲明是如何工作的。我不會因此對你有任何缺點,但會提供這樣的建議,即一個專門研究基礎知識的小時將使生活變得更加輕鬆,並且避免以後幾小時的挫折。 – LarsH 2012-07-11 15:12:13