我正在寻找一种扩展SAXON当前可用的doc()功能的方式,它可以从文件系统或http网络中读取XML,而不是从内存中读取XML。
我要使用它的方式就像:
mydoc('id')/root/subroot/@myattr
或
doc('mydoc://id')/root/subroot/@myattr
到目前为止我所考虑的:
所以问题是:
Saxon经验丰富的用户的任何评论都会受到赞赏。
答案 0 :(得分:0)
执行此操作的标准方法是编写一个URIResolver
并将其注册到转换器。调用URIResolver
,并提供请求的URI,并期望它返回Source(例如,可以是StreamSource
,SAXSource
或DOMSource
)。在这种情况下,您通常会返回一个StreamSource
包装一个StringReader
,其中String
包装一个包含XML的mean
。
您同样可以使用扩展功能,但可能会稍微复杂一些。