Обработка ответа Яндекс Геокодер — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
Строка 7: Строка 7:
 
"x:ymaps/x:GeoObjectCollection/gml:featureMember[1]/x:GeoObject/gml:Point/gml:pos"<br />
 
"x:ymaps/x:GeoObjectCollection/gml:featureMember[1]/x:GeoObject/gml:Point/gml:pos"<br />
 
Таким образом, используя пространства имён мы можем получить необходимые значения из ответа геокодера Яндекс.
 
Таким образом, используя пространства имён мы можем получить необходимые значения из ответа геокодера Яндекс.
[[Категория:Верстка в XSLT]]
+
[[Категория:Верстка в XSLT]][[Категория:Сторонние сервисы и программы]]

Версия 09:26, 5 июня 2013

Для извлечения данных полученных от геокодера Яндекс необходимо добавить соответствующие пространства имён, которые можно увидеть на странице [1] также, необходимо добавить пространство имён "x".
Всё это необходимо, так как в ответе мы получим все ноды в XML c пространствами имён, и несмотря на то, что через select="." мы получаем XML без них, для того чтобы добраться до нужной ноды в xpath эти пространства имён следует учесть. Убедиться в этом можно используя плагин для firefox firepath.
При включенном firepath откроем тестовый запрос к геокодеру [2] на открывшейся странице мы видим чистую XML, но firepath нам покажет что все ноды имеют пространство имён. Соответственно, чтобы добараться до нужного значения мы можем воспользоваться firepath, например, чтобы получить ноду pos, xpath будет выглядеть так:
"x:ymaps/x:GeoObjectCollection/gml:featureMember[1]/x:GeoObject/gml:Point/gml:pos"
Таким образом, используя пространства имён мы можем получить необходимые значения из ответа геокодера Яндекс.