XML.Path
Path (Работа с путем ветки) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Атрибут используется совместно с объектом ветки XML и возвращает или изменяет полный путь внутри XML-документа. Путь записывается в виде последовательности наименований веток с возможным дополнительным номером, указывающим на индекс ветки среди веток текущего уровня с таким же наименованием: <Ветка1>{[<Индекс1>]}{<Ветка2>...}
(к примеру <Setup><Options><Option>[2]
). При изменении атрибута будет осуществлена попытка перепозиционирования объекта. Для очень больших документов получение или изменение атрибута может быть замедлено (так как при создании пути сравниваются имена соседних веток, а при изменении пути производится поиск по именам для каждого уровня структуры), поэтому, не рекомендуется использовать атрибут для очень больших документов внутри цикла разбора документа (т.е., повторение его большое количество раз может привести к замедлению разбора).
Синтаксис
XML.Path:<Полный путь текущей ветки XML (STRING)>
Возвращаемое значение
Возвращает строковое значение.
Примеры
aObject:=XML.create(); Стр:=aObject.LoadFromFile("c:\file.xml",65001); If not IsEmpty(Стр) Then Message("Найдены ошибки при загрузке файла:"+_NEWLINE+Стр); Exit; EndIf; //Позиционирование объекта ветки aNode:=aObject.Root; aNode.Path:="<data><keyword><value>[5]"; //Вывод информации по структуре подчинения ветки While not aNode.IsRoot Do Message(aNode.FullName+?(_And(aNode.Count()=0,aNode.Value<>"")," ---> """+aNode.Value+"""")+", Атрибуты: "+aNode.Attributes); aNode:=aNode.Parent; EndDo;