如何设置XSLT脚本的基本URI?
是否有一种方法可以在XSLT中设置基本URI,使其适用于整个文档(如XQuery) 即如何设置XSLT脚本的基本URI?,xslt,xslt-2.0,Xslt,Xslt 2.0,是否有一种方法可以在XSLT中设置基本URI,使其适用于整个文档(如XQuery) 即 我认为您需要的是文档根节点上的xml:base属性 请参阅以确认这将执行您想要的操作。无法更改文档的基本URI。从中: “文档实体的基本URI或 外部实体由以下因素决定: RFC 3986规则,即 URI是用于检索数据的URI 文档实体或外部实体。” 可以使用xml:base(同样)设置文档中任何节点的基本URI(文档-node()除外) “属性xml:base可能是 插入到XML文档中以指定 的基URI以外
我认为您需要的是文档根节点上的
xml:base
属性
请参阅以确认这将执行您想要的操作。无法更改文档的基本URI。从中: “文档实体的基本URI或 外部实体由以下因素决定: RFC 3986规则,即 URI是用于检索数据的URI 文档实体或外部实体。” 可以使用
xml:base
(同样)设置文档中任何节点的基本URI(文档-node()除外)
“属性xml:base可能是
插入到XML文档中以指定
的基URI以外的基URI
“文件或外部实体”
从
URI引用可能是相对的。这个
数据库的基本URI(请参见[3.2基本URI])
第二个参数节点集中的节点
这是文件顺序中的第一个
用作解析
将相对URI转换为绝对URI。如果
第二个参数被省略,然后
它默认为中的节点
包含
包含对的调用的表达式
文档功能
来自
每个节点也有一个关联的URI
调用其基本URI,该URI用于
正在解析
将相对URI表示为绝对URI
URI。如果是元素或处理
指令发生在外部环境中
实体,该元素的基本URI
或处理指令是URI
外部实体的名称;否则
基本URI是的基本URI
文件。文档的基本URI
节点是文档的URI
实体。文本节点的基URI,
注释节点、属性节点或
namespace节点是
节点的父节点
因此:
<xsl:copy-of select="document('external.xml')" xml:base="http://example.org">
应作为
<xsl:copy-of select="document('http://example.org/external.xml')">
<xsl:copy-of select="document('http://example.org/external.xml')">