2010-05-20 56 views
2

我遇到了使用XPATH函數的問題。當我嘗試調用小寫或大寫等一些函數時,它們不會被執行,我也無法解決問題。我在XSL樣式表的頂部包含了命名空間xmlns:fn =「http://www.w3.org/2005/xpath-functions」,並使用fn命名空間來調用這些函數,但無論如何沒有任何工作。任何人都可以解釋的原因,我應該做什麼,才能夠使用以下功能?使用XPATH函數的問題

乾杯

+0

您可以添加您的樣式表(或小樣本展示問題)嗎?應該不需要包含名稱空間。 – 2010-05-20 13:24:06

回答

3

只有XSLT 2.x支持的XPath 2.x版本很可能您正在使用XSLT 1.0處理器。

XSLT 2.0樣式表在其<stylesheet>元素上具有version="2.0"屬性。如果您將這樣的樣式表提供給XSLT 1.0處理器,您將收到某種錯誤或警告消息。

因此,無論是使用XSLT 2.0處理器或不以XSLT 1.0處理器使用XPath 2.0/ XQuery F & O功能。

+0

是的,沒錯,我有一個1.0版的樣式表。我不確定如果我想使用XSL 2.0,我該怎麼做。它依賴於Web服務器嗎? – Alex 2010-05-20 13:45:41

0

如果您使用的是XSLT 1.0,那麼您不能使用問題中提到的函數。

但是,您仍然可以使用翻譯功能以小寫字母轉換文本。

<xsl:variable name="lowercase" select="translate($someString, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')" /> 

現在您可以使用$小寫。