我需要选择所有OrderLines
和ProductType
“电子邮件”。 是否有一个'哪里'条款。我必须使用xpath进行选择。 这是我的XML文档:如何使用xpath选择多个具有相同值的元素
<InputOrder>
<Order>
\t <OrderType>Change</OrderType>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Email>
<ProductLine>Email</ProductLine>
<ProductName>Email Service</ProductName>
<ProductLevel>2</ProductLevel>
<ProductType>EMAIL</ProductType>
<ProductOperation>NoChange</ProductOperation>
</Email>
</Product>
<Asset>
<ActivationStatus>Complete</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Email>
<ProductLine>Email</ProductLine>
<ProductName>Email</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>EMAIL</ProductType>
<ProductOperation>NoChange</ProductOperation>
</Email>
</Product>
<Asset>
<ActivationStatus>ReadyForActivation</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Access>
<ProductLine>Access</ProductLine>
<ProductName>Internet Access Service</ProductName>
<ProductLevel>2</ProductLevel>
<ProductType>INTERNETACCESS</ProductType>
<ProductOperation>NoChange</ProductOperation>
</Access>
</Product>
<Asset>
<ActivationStatus>Complete</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
\t <OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Itv>
<ProductLine>TV</ProductLine>
<ProductName>Ethernet switch</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>LITVADDITIONAL</ProductType>
<ProductOperation>NoChange</ProductOperation>
</Itv>
</Product>
<Asset>
<ActivationStatus>Complete</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Internet>
<ProductLine>Internet</ProductLine>
<ProductName>IC31</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>INTERNET</ProductType>
<ProductOperation>Add</ProductOperation>
</Internet>
</Product>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Internet>
<ProductLine>Internet</ProductLine>
<ProductName>IC01</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>INTERNET</ProductType>
<ProductOperation>Delete</ProductOperation>
</Internet>
</Product>
<Asset>
<ActivationStatus>Complete</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Itv>
<ProductLine>TV</ProductLine>
<ProductName>Sport1 pakket</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>TVCHANNEL</ProductType>
<ProductOperation>Add</ProductOperation>
</Itv>
</Product>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Itv>
<ProductLine>TV</ProductLine>
<ProductName>Digitale tv-ontvanger met harddiskrecorder</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>TV</ProductType>
<ProductOperation>Delete</ProductOperation>
</Itv>
</Product>
<Asset>
<ActivationStatus>Complete</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Itv>
<ProductLine>TV</ProductLine>
<ProductName>Digitale tv-ontvanger</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>TV</ProductType>
<ProductOperation>Delete</ProductOperation>
</Itv>
</Product>
<Asset>
<ActivationStatus>Complete</ActivationStatus>
<AssetStatus>Active</AssetStatus>
</Asset>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Engineer>
<ProductLine>Engineer</ProductLine>
<ProductName>Omruilen NT</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>ACCESSENGINEER</ProductType>
<ProductOperation>Add</ProductOperation>
</Engineer>
</Product>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<OrderLine>
<ServiceId>100001</ServiceId>
<Product>
<Engineer>
<ProductLine>Engineer</ProductLine>
<ProductName>Omruilen modem</ProductName>
<ProductLevel>3</ProductLevel>
<ProductType>ACCESSENGINEER</ProductType>
<ProductOperation>Add</ProductOperation>
</Engineer>
</Product>
<OrderLineStatus>Open</OrderLineStatus>
</OrderLine>
<HardwareAlreadyDelivered>false</HardwareAlreadyDelivered>
<Leadtime>12</Leadtime>
<DirectTerminationMailandUser>false</DirectTerminationMailandUser>
<SuppressCommunication>false</SuppressCommunication>
</Order>
</InputOrder>
这适用于选择一个具有文本“EMAIL”的元素(第一个元素),但不适用于包含文本的所有元素。 –
此xpath将查找满足条件的所有元素。问题是你用什么工具来搜索它。可能你应该使用类似“findAll”等的东西 –