我有一些工作XQuery脚本,我想用它来生成有效的XML文档。因此,我还想包含一个XML标头:<?xml version="1.0" encoding="UTF-8"?>
。我知道这个标题是可选的,但我希望它包括在内,特别是指定正确的编码。
但是,我不知道如何将此标头插入输出中。我的编辑器(XMLSpy)抱怨我可以想到插入标题的任何变化。
根据我在此发现的少数资源,可能是我不应该手动生成此标题,而是让我的序列化程序为我执行此操作,可能通过使用{{1}设置解释器选项}。但是,当涉及XMLSpy时,我找不到任何关于此的信息。
有没有办法手动插入此标头?如果没有,我是否需要修改我的解释器以便自动生成?
答案 0 :(得分:2)
我认为声明选项是特定于实现的,因此您需要为xQuery处理器查找正确的选项。例如:
declare option saxon:output "omit-xml-declaration=no";
declare option xdmp:output "omit-xml-declaration=no";
但是,你应该能够通过在输出前加上prolog来手动输出prolog:
<?xml version="1.0" encoding="UTF-8" ?>
答案 1 :(得分:1)
假设您正在使用AltovaXML来执行xquery,您需要通过命令行,java或其他任何接口执行它来将omitXMLDeclaration
设置为false(默认值为true)。似乎没有设置此xquery级别选项声明。 http://manual.altova.com/AltovaXML/altovaxmlcommunity/上的文档显示了如何针对各种情况执行此操作。