Прогресс Sax-ридер - PullRequest
0 голосов
/ 30 мая 2018

Я новичок в прогрессе саксофониста.Я читаю XML и пытаюсь получить значение одного из атрибутов в узле.В частности, значение атрибута place-id.

<address ssid="32975" place-id="11537" quality="good">

Я читаю документацию здесь: https://documentation.progress.com/output/ua/OpenEdge_latest/index.html#page/dvxml%2Fretrieving-data-from-a-sax-attributes-object.html%23wwID0ECILM и мне кажется, что это указывает на то, что я должен использовать

GET-VALUE-BY-NAMESPACE-NAME( ) 

Я написал это такв случае:, но не смог заставить его работать, и не может найти никаких примеров:

WHEN "address" THEN ASSIGN lv-place-id = charData.GET-VALUE-BY-NAMESPACE-NAME('address','place-id'). 

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 05 июня 2018

Прошло много времени с тех пор, как я что-то кодировал с помощью SAX-ридера, но мой старый код подсказывает, что вы, вероятно, хотите что-то вроде этого в вашей процедуре StartElement ():

placeId = hAttributes:get-value-by-qname( "place-id" ).

В зависимости от того, кто вына самом деле вам может понадобиться дополнительный код, чтобы решить, когда его выполнять (я предполагаю, что ваш оператор CASE подходит для этой цели).

Этот пример кода также может быть полезен:

https://documentation.progress.com/output/ua/OpenEdge_latest/index.html#page/dvxml%2Fwithout-namespace-processing.html%23wwID0EFNAO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...