2011-03-29 70 views
1

这应该是轻松的一年...XSL转换,文件要求

在Oracle中,我使用XMLTYPE.TRANSFORM(myxml,myxsl)执行变换。

返回的XMLTYPE是一个片段(即没有XML文档声明)。我要求输出文件(即<?XML version="1.0" ?>声明)。

我的转换工作正常使用独立工具。

任何帮助,将不胜感激..

回答

1

我结束了在声明字符串前面加上到CLOB输出像这样解决这个:return ('<?xml version="1.0" encoding="UTF-8"?>' || xmltype.GETCLOBVAL(L_RESULT));

0

你可以使用SYS_XMLGEN:
select sys_xmlgen(xmlforest(a.value, a.value2)) from
(select 'value' value, 2 value2 from dual) a

+0

谢谢,我试过这个,但是它将结果文档插入一个封闭的''元素中,根据它需要匹配的模式使其失效。看起来XMLTYPE.TRANSFORM合理地认为生成的文档可能没有很好的形成,所以只返回一个片段。我只想将所有的XML格式保存到样式表中,让它完成这项工作。 – NotNowJohn 2011-03-29 14:10:07