Eu tive problemas semelhantes, lendo pom.xml (um arquivo de configuração do maven) no shell script para jenkins. Para garantir um bom resultado, eu faria:
xmllint --xpath "//swid:software_identification_tag/*[local-name()='product_version']/*[local-name()='name']/text()" file.xml
Você não parece ter o problema aqui se seu xml tiver esse tipo de conteúdo adicional:
<swid:product_specifics>
<swid:product_version>
...
</swid:product_version>
</swid:product_specifics>
xmllint --xpath "//*[local-name()='product_version']/*[local-name()='name']/text()" file.xml
não funciona
Na minha situação, um pom.xml tem muitos elementos de "versão", portanto, se você quiser um específico, o caminho deve ser exato, caso contrário, você obterá vários valores que não deseja.