Вывод содержимого элемента xml в командной строке?
А у вас там xmlns, поэтому xmlstarlet «не видит» тег внутри. Поэтому только так:
$ xmlstarlet sel -t -v "//*[name()='productKey']" document.xml
А почему бы не использовать xsltproc + xslt файлик?