2017-01-06 87 views
0

我目前正在使用XSL進行工作項目,而且我正面臨一個問題。XSL-FO | FO:正在刪除標籤

我想讀看起來像這樣的一個數據庫值:

<fo:block font-weight='bold>hello</fo:block> 

,似乎XSL被剝離<fo:block>元素,因爲它給了我唯一的文字(我只看到你好,不粗體,它不像塊元素)。我覺得,不知何故,XSL將從數據庫中讀取的值解釋爲一個字符串,並將<fo>標籤去掉,只留下我的文本。

任何想法可以做什麼,以便我的造型得到保存?

(顯然,這個例子已經簡化,要顯示的文字長於)

編輯:自回答以備將來參考

+0

你用什麼技術編譯'.fo'文件?在處理器創建輸出之前,您有權訪問該文件嗎? – Boldewyn

+1

另外,你是否將前綴'fo'綁定到XSL-FO?仔細檢查一下,你的問題聽起來就像FO處理器由於命名空間錯誤而忽略它。 – Boldewyn

+0

@Boldewyn是的,它是前綴,我的模板的其餘部分是用'fo'編寫的,只有從數據庫讀取的部分似乎是一個問題 –

回答

0

首先我想感謝大家花時間回答我。我非常高興看到SO社區如此強大。

我已經解決了我的問題是這樣的:

<xsl:for-each select="/fulfill-list/ticket-list/list-item/eventTicketContent/xmlTicketContent/ticketdescription/node()"> 
     <xsl:copy-of select="child::node()" /> 
    </xsl:for-each> 

我真的不知道發生了什麼引擎蓋下,爲什麼<fo>標籤被拆除,但他們。通過所有這些,並使用<xsl:copy-of>做了竅門。

再一次,非常感謝你們!

+0

沒有需要使用'for-each'和一個嵌套的'copy-of',你也可以使用單一的'直接。 –

0

基於要改變<xsl:value-of select='/fulfill-list/ticket-list/list-item/eventTicketConte‌​nt/xmlTicketContent/‌​ticketdescription'/><xsl:copy-of select='/fulfill-list/ticket-list/list-item/eventTicketConte‌​nt/xmlTicketContent/‌​ticketdescription'/>的意見(或或許是<xsl:copy-of select='/fulfill-list/ticket-list/list-item/eventTicketConte‌​nt/xmlTicketContent/‌​ticketdescription/node()'/>)。