дал docuent a.xml:Почему этот xpath не работает?
<?xml version="1.0"?>
<xml>
<listUsersResponse xmlns="http://www.algorithmics.com/schema">
<status>OK</status>
<users size="615">
<user>
<id>user1</id>
<name>Joe Doe</name>
<attributes size="0"/>
<status>ACTIVE</status>
<roleId>CREDIT_SUPPORT</roleId>
<password>454E454A77484D3566717547686858726842503755513D3D</password>
<timeout>0</timeout>
</user>
<user>
<id>user2</id>
<name>Tom Smith</name>
<attributes size="0"/>
<status>ACTIVE</status>
<roleId>RISK_MANAGEMENT</roleId>
<password>627678416458513567624E37384C314E626C30672B773D3D</password>
<timeout>0</timeout>
</user>
</users>
</listUsersResponse>
</xml>
Я хочу, чтобы извлечь XML из <user>
узла, который имеет идентификатор элемента со значением «user1».
@skovorodkin: спасибо за отзыв. теперь я получаю узел. но он не показывает полное содержимое узла:
$ xmllint --shell a.xml <<EOF
...setns x=http://www.algorithmics.com/schema
...xpath //x:users/x:user[x:id="user1"]
...EOF
/>/> Object is a Node Set :
Set contains 1 nodes:
1 ELEMENT user
Я ожидаю:
<user>
<id>user1</id>
<name>Joe Doe</name>
<attributes size="0"/>
<status>ACTIVE</status>
<roleId>CREDIT_SUPPORT</roleId>
<password>454E454A77484D3566717547686858726842503755513D3D</password>
<timeout>0</timeout>
</user>
Ваш XML имеет пространство имен, поэтому вам нужно настроить свой запрос. Проверьте этот ответ, например: http://stackoverflow.com/a/8266075/847552 – skovorodkin
Спасибо. Я обновил свой пост. можно ли отобразить полное содержание результата? – AlexL
Не забудьте поднять ответ на другой вопрос, если это поможет. ;-) –