0
XMLファイルのDTDの場所を上書きするためにカタログファイルを使用しようとしています。私はここにすべてのヒントを試してみたHow to use saxon built-in catalog featureしかし、それを動作させることができませんでした。私はこの単純な例に減少:サクソンのSaxon XQueryカタログファイルはDTD URIを上書きしますか?
確認バージョン:
C:\test>java net.sf.saxon.Query
No query file name
Saxon-HE 9.7.0.7J from Saxonica
...
マイカタログファイルを。私は(uriSuffix)最も単純に削減しようとした:
C:\test>java org.apache.xml.resolver.apps.resolver -c didcat.xml -u bad.dtd uri
Cannot find CatalogManager.properties
Resolve URI (uri):
uri: bad.dtd
Result: file:/C:/test/good.dtd
シンプルなのtest.xmlファイル:
<?xml version="1.0"?>
<!DOCTYPE a SYSTEM "bad.dtd">
<a>hello world</a>
シンプルなカタログと期待通り
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<uriSuffix uriSuffix="bad.dtd" uri="good.dtd" />
</catalog>
確認リゾルバがクラスパスや行動でありますtest.xql:
結果:
C:\test>java net.sf.saxon.Query -t -catalog:didcat.xml test.xql
Loading catalog: didcat.xml
Saxon-HE 9.7.0.7J from Saxonica
Java version 1.8.0_101
Analyzing query from test.xql
Analysis time: 131.650519 milliseconds
Resolved URI: test.xml
file:/C:/test/test.xml
Building tree for file:/C:/test/test.xml using class net.sf.saxon.tree.tiny.TinyBuilder
Error on line 2 column 6 of test.xql:
FODC0002: I/O error reported by XML parser processing file:/C:/test/test.xml:
C:\test\bad.dtd (The system cannot find the file specified)
Query failed with dynamic error: I/O error reported by XML parser processing file:/C:/test/test.xml: C:\test\bad.dtd (The system cannot find the file specified)
DTD URIを上書きするためにいくつかの異なるカタログ手法を試しましたが、どれも成功しませんでした。私は間違って何をしていますか?前もって感謝します。
ありがとうございます。完璧に働いた。 –