xmlstarlet:如何省略具有特定属性的元素?
我希望检索某些XML元素,但前提是它们不包含starlet的特定属性 下面是文件myFile.XML中的一个XML示例: 这导致 1 Foo1 二○○二 但预期的结果是 1 Foo1xmlstarlet:如何省略具有特定属性的元素?,xml,xpath,xmlstarlet,Xml,Xpath,Xmlstarlet,我希望检索某些XML元素,但前提是它们不包含starlet的特定属性 下面是文件myFile.XML中的一个XML示例: 这导致 1 Foo1 二○○二 但预期的结果是 1 Foo1 以何种方式增强此选择以省略每个具有子类型的主语?尝试将谓词[非(@subtype)]添加到匹配项中 -m”//subject[@type='someType'][非(@subtype)]” <?xml version="1.0"?> <document>
以何种方式增强此选择以省略每个具有子类型的主语?尝试将谓词
[非(@subtype)]
添加到匹配项中
-m”//subject[@type='someType'][非(@subtype)]”
<?xml version="1.0"?>
<document>
<classInfo>
<subjects>
<subject id="1" type="someType">
<subjectname>Foo1</subjectname>
</subject>
<subject id="2" subtype="someSubtype" type="someType">
<subjectname>Foo2</subjectname>
</subject>
</subjects>
</classInfo>
</document>
xmlstarlet sel -T -t -m "//subject[@type='someType']" -v '@id' -o $'\t' -v 'subjectname[text()]' -nl myFile.xml