私は次のようサクソンCLIを使用してMavenのPOMファイルのバージョンを読み込むしようとしている:Saxon CLIでXML名前空間を定義して、その名前空間にあるものをクエリできるようにする方法はありますか?
java -cp Saxon-HE-9.7.0-4.jar net.sf.saxon.Query -s:./pom.xml -qs:/project/version \!method=text
ファイルpom.xml
は次のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0">
<modelVersion>4.0.0</modelVersion>
<groupId>foo</groupId>
<artifactId>bar</artifactId>
<packaging>pom</packaging>
<name>baz</name>
<version>0.0.1-SNAPSHOT</version>
</project>
ので、私はエラーを取得しています私はデフォルトの名前空間を指定しています。その名前空間宣言(xmlns="http://maven.apache.org/POM/4.0.0"
)を省略すると、クエリが機能します。私はSaxonのドキュメントから、ネームスペースハンドラを定義するような何かをする必要があることを知っていますが、私は突然XML名前空間esotericaに潜んでいます。誰でもSaxonのコマンドラインで簡単なオプションを使ってこれを行う方法を知っていますか?
Perfecto、@Martin、ちょうど私が必要なもの! – nclark