#xpath #xpath-1.0
#xpath #xpath-1.0
Вопрос:
У меня есть анализатор, который получает значения xml с помощью xpath и преобразует его в файл json. Я пытаюсь выполнить некоторый xpath и сделать его относительным, но могу заставить его работать, только если я сделаю его статическим (абсолютным).
translate(ns2:ModelYear, translate(ns2:ModelYear,'0123456789',''), '')"
и я установил его как false для IsStaticPath, но это не работает, однако он работает, если я делаю:
translate(/SOAP-ENV:Envelope/SOAP-ENV:Body/ns4:ProcessMessageResponse/ns4:payload/ns4:content/ns2:ShowVehicleInvoice/ns2:ShowVehicleInvoiceDataArea/ns2:VehicleInvoice/ns2:Invoice/ns2:VehicleInvoiceVehicleLineItem/ns2:Vehicle/ns2:ModelYear, translate(/SOAP-ENV:Envelope/SOAP-ENV:Body/ns4:ProcessMessageResponse/ns4:payload/ns4:content/ns2:ShowVehicleInvoice/ns2:ShowVehicleInvoiceDataArea/ns2:VehicleInvoice/ns2:Invoice/ns2:VehicleInvoiceVehicleLineItem/ns2:Vehicle/ns2:ModelYear,'0123456789',''), '')"
и я установил для IsStaticPath значение true, но я не хочу этого делать. Есть идеи? Не уверен, что мой xpath неверен или мой синтаксический анализатор нуждается в некотором исправлении.
Комментарии:
1. ns2: ModelYear. Предполагается ли, что точка должна быть там? опечатка?
2. Опечатка с моей стороны, все еще не работает.
3. Тогда остается только «ваш текущий узел» (обозначается .) — это не то, что вы ожидаете (и должно быть), когда / где вы выполняете относительную версию запроса.