[SR-Users] parse XML nested name-spaces

Daniel-Constantin Mierla miconda at gmail.com
Wed Apr 6 19:43:06 CEST 2022


iirc, to get the text between tags, you have to use text() function of
xpath (should be in the xpath specs) -- I guess you have to use:

$xml(x=>xpath:/pidf:presence/dm:device/gp:geopriv/gp:location-info/gs:Circle/gml:pos/text())

Cheers,
Daniel

On 06.04.22 18:13, Artur Hovsepyan wrote:
> good evening everyone,
>
> can you please help how to parse following XML body and get the
> "<gml:pos>31.204359 -44.512358</gml:pos>" in a variable?
>
> <?xml version="1.0"?>
> <presence xmlns="urn:ietf:params:xml:ns:pidf"
> xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
> xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10"
> xmlns:gml="http://www.opengis.net/gml"
> xmlns:gs="http://www.opengis.net/pidflo/1.0"
> xmlns:con="urn:ietf:params:xml:ns:geopriv:conf"
> entity="sip:+6478897789 at ims.mnc0xx.mccxxx.3gppnetwork.org">
> <dm:device id="Wifi">
> <gp:geopriv>
> <gp:location-info>
> <gs:Circle srsName="urn:ogc:def:crs:EPSG::5524">
> <gml:pos>31.204359 -44.512358</gml:pos>
> <gs:radius uom="urn:ogc:def:uom:EPSG::8190">10.578000</gs:radius>
> </gs:Circle>
> <con:confidence pdf="normal">92</con:confidence>
> </gp:location-info>
> <gp:method>DBH_HELO</gp:method>
> <gp:usage-rules/>
> </gp:geopriv>
> <dm:timestamp>2022-04-05T19:16:34Z</dm:timestamp>
> </dm:device>
> </presence>
>
> i tried few variants:
>
> xinfo("GML_LOC:
> $xml(x=>xpath:/pidf:presence/pidf:dm:device/pidf:gp:geopriv/pidf:gp:location-info/pidf:gs:Circle/pidf:gml:pos)\n")
> xinfo("GML_LOC:
> $xml(x=>xpath:/pidf:presence/pidf:dm\:device/pidf:gp\:geopriv/pidf:gp\:location-info/pidf:gs\:Circle/pidf:gml\:pos)\n");
> xinfo("GML_LOC:
> $xml(x=>xpath:/pidf:presence/pidf:dm:device/pidf:gp:geopriv/pidf:gp:location-info/pidf:gs:Circle/pidf:gml:pos)\n");
> xinfo("GML_LOC:
> $xml(x=>xpath:/pidf:presence/dm:device/gp:geopriv/gp:location-info/gs:Circle/gml:pos)\n");
>
> and end up with error "unable to evaluate xpath expression":
>
> ERROR: xmlops [pv_xml.c:308]: pv_get_xml(): unable to evaluate xpath
> expression
> [/pidf:presence/dm:device/gp:geopriv/gp:location-info/gs:Circle/gml:pos/70]
>
> thanks in advance,
> Art
>
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
>   * sr-users at lists.kamailio.org
> Important: keep the mailing list in the recipients, do not reply only to the sender!
> Edit mailing list options or unsubscribe:
>   * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla -- www.asipto.com
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - Online
  * https://www.asipto.com/sw/kamailio-advanced-training-online/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20220406/5f62c819/attachment.htm>


More information about the sr-users mailing list