以下のファイルを例とする
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0">
<version>0.0.1</version>
</project>https://xmlstar.sourceforge.net/doc/UG/ch05s01.html に書かれている通り、-N オプションを使う。
% xml sel -N x=http://maven.apache.org/POM/4.0.0 -t -v '/x:project/x:version' pom.xml
0.0.1xpath2/3 や xquery2/3 とか使えるらしい。
# -e だけ指定した場合、`qname` が `*:qname` として扱われるぽい
% xidel -e '/project/version' pom.xml
1.37-SNAPSHOT
# --xpath だと見つからない
% xidel --xpath '/project/version' pom.xml
# --xpath でも `*:qname` なら見つかる
% xidel --xpath '/*:project/*:version' pom.xml
1.37-SNAPSHOT
# xmlstarlet のように xmlns を指定
% xidel --xmlns 'x=http://maven.apache.org/POM/4.0.0' -e '/x:project/x:version' pom.xml
1.37-SNAPSHOT
# BracedURILiteral
% xidel --xpath '/Q{http://maven.apache.org/POM/4.0.0}project/Q{http://maven.apache.org/POM/4.0.0}version' pom.xml
1.37-SNAPSHOTわりと雑に処理してれくる。
% go run github.com/sibprogrammer/xq@latest -x '/project/version' pom.xml
1.37-SNAPSHOT
% go run github.com/sibprogrammer/xq@latest -j pom.xml | jq '.project.version' -r
1.37-SNAPSHOT