УзелXmlDom
Стд::Xml::Dom::УзелXmlDom
Объект узла XML DOM.
Сравнение
Ссылочное
Иерархия типа
Базовые типы: Объект
Примеры
Общие примеры
Чтение значений атрибутов и элементов различных типов
Исходная строка XML
<?xml version="1.0" encoding="UTF-8"?>
<Типы>
<Атрибуты Строка="Строка" БайтыBase64="dGVzdA" Булево="true" Время="23:59:59.999"
Дата="2023-01-01" ДатаВремя="2023-01-01T23:59:59.999" Длительность="PT144H0.005S" Момент="2020-04-16T20:30:40.345Z"
Ууид="21fe9796-4735-4334-84fd-6d0b0b83b517" Число="123.45" />
<Элементы>
<Строка>Строка</Строка>
<БайтыBase64>dGVzdA</БайтыBase64>
<Булево>true</Булево>
<Время>23:59:59.999</Время>
<Дата>2023-01-01</Дата>
<ДатаВремя>2023-01-01T23:59:59.999</ДатаВремя>
<Длительность>PT144H0.005S</Длительность>
<Момент>2020-04-16T20:30:40.345Z</Момент>
<Ууид>21fe9796-4735-4334-84fd-6d0b0b83b517</Ууид>
<Число>123.45</Число>
</Элементы>
</Типы>
Код чтения узлов XML DOM
метод ПрочитатьДокументXml(ДокументXml: УзелXmlDom)
// Корневой элемент Типы
знч Типы = ДокументXml.ПолучитьДочерниеУзлы().Первый()
// Элемент Атрибуты
знч Атрибуты = Типы.ПолучитьДочерниеУзлы("Атрибуты").ЕдинственныйИлиНеопределено()
знч АтрибутСтрока = Атрибуты.ПолучитьАтрибут("Строка").ЗначениеКакСтрока() // Строка
знч АтрибутБайтыBase64 = Атрибуты.ПолучитьАтрибут("БайтыBase64").ЗначениеИзBase64() // 74657374
знч АтрибутБулево = Атрибуты.ПолучитьАтрибут("Булево").ЗначениеКакБулево() // Истина
знч АтрибутВремя = Атрибуты.ПолучитьАтрибут("Время").ЗначениеКакВремя() // 23:59:59.999
знч АтрибутДата = Атрибуты.ПолучитьАтрибут("Дата").ЗначениеКакДата() // 2023-01-01
знч АтрибутДатаВремя = Атрибуты.ПолучитьАтрибут("ДатаВремя").ЗначениеКакДатаВремя() // 2023-01-01T23:59:59.999
знч АтрибутДлительность = Атрибуты.ПолучитьАтрибут("Длительность").ЗначениеКакДлительность() // 144:00:00.005
знч АтрибутМомент = Атрибуты.ПолучитьАтрибут("Момент").ЗначениеКакМомент(ЧасовойПояс.Текущий()) // 2020-04-16T20:30:40.345Z
знч АтрибутУуид = Атрибуты.ПолучитьАтрибут("Ууид").ЗначениеКакУуид() // 21fe9796-4735-4334-84fd-6d0b0b83b517
знч АтрибутЧисло = Атрибуты.ПолучитьАтрибут("Число").ЗначениеКакЧисло() // 123.45
// Элемент Элементы
знч Элементы = Типы.ПолучитьДочерниеУзлы("Элементы").ЕдинственныйИлиНеопределено()
знч ЭлементСтрока = ПолучитьЭлемент(Элементы, "Строка").ЗначениеКакСтрока() // Строка
знч ЭлементБайтыBase64 = ПолучитьЭлемент(Элементы, "БайтыBase64").ЗначениеИзBase64() // 74657374
знч ЭлементБулево = ПолучитьЭлемент(Элементы, "Булево").ЗначениеКакБулево() // Истина
знч ЭлементВремя = ПолучитьЭлемент(Элементы, "Время").ЗначениеКакВремя() // 23:59:59.999
знч ЭлементДата = ПолучитьЭлемент(Элементы, "Дата").ЗначениеКакДата() // 2023-01-01
знч ЭлементДатаВремя = ПолучитьЭлемент(Элементы, "ДатаВремя").ЗначениеКакДатаВремя() // 2023-01-01T23:59:59.999
знч ЭлементДлительность = ПолучитьЭлемент(Элементы, "Длительность").ЗначениеКакДлительность() //144:00:00.005
знч ЭлементМомент = ПолучитьЭлемент(Элементы, "Момент").ЗначениеКакМомент(ЧасовойПояс.Текущий()) //2020-04-16T20:30:40.345Z
знч ЭлементУуид = ПолучитьЭлемент(Элементы, "Ууид").ЗначениеКакУуид() // 21fe9796-4735-4334-84fd-6d0b0b83b517
знч ЭлементЧисло = ПолучитьЭлемент(Элементы, "Число").ЗначениеКакЧисло() // 123.45
;
метод ПолучитьЭлемент(Элемент: УзелXmlDom, Имя: Строка): УзелXmlDom
возврат Элемент.ПолучитьДочерниеУзлы(Имя).Первый()
;
См. также
ПоискXPath, ПреобразовательXml
Свойства
Вид
ТолькоЧтение
Вид: ВидУзлаXmlDomВид узла XML.
Имя
ТолькоЧтение
Имя: Строка?Имя узла XML.
Если не может быть определено для узла - Неопределено
Префикс
ТолькоЧтение
Префикс: Строка?Префикс узла XML:
- для вида узла Атрибут, если отсутствует -
Неопределено - для вида узла Элемент, если используется пространство имен по умолчанию - пустая строка, если не используется -
Неопределено - для всех остальных видов узлов -
Неопределено
ПространствоИмен
ТолькоЧтение
ПространствоИмен: Строка?Пространство имен узла XML:
- для вида узла Атрибут, если не указан префикс, пространство имен по умолчанию не определено -
Неопределено - для вида узла Элемент, если пространство имен по умолчанию не используется -
Неопределено - для всех остальных видов узлов -
Неопределено
Методы
ВСтроку
ВСтроку(): СтрокаПримеры:
- Документ/Элемент - <elem xmlns="http://ns" attr="value">value</elem>
- Атрибут - attr="value"
- Текст - value
- ПространствоИмен - xmlns:ns="http://company"
- Комментарий - <!--Текст комментария-->
- ИнструкцияОбработки - <?ИмяИнструкции?>
Переопределение
Объект::ВСтроку
ЗначениеИзBase64
ЗначениеИзBase64(): БайтыБайты, декодируется из строки Base64.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакБулево
ЗначениеКакБулево(): БулевоБулево.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакВремя
ЗначениеКакВремя(): ВремяВремя.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакДата
ЗначениеКакДата(): ДатаДата.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакДатаВремя
ЗначениеКакДатаВремя(): ДатаВремяДатаВремя.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакДлительность
ЗначениеКакДлительность(): ДлительностьДлительность.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакМоме нт
ЗначениеКакМомент(ЧасовойПояс: ЧасовойПояс): МоментМомент.
- ЧасовойПояс - имя часового пояса для значения типа
Момент, если не указан, используется системный.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакСтрока
ЗначениеКакСтрока(): Строка?Строка, если значение узла отсутствует - Неопределено.
ЗначениеКакУуид
ЗначениеКакУуид(): УуидУуид.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ЗначениеКакЧисло
ЗначениеКакЧисло(): ЧислоЧисло.
Исключения
ИсключениеПроверкиТипа - если нельзя вычислить
ПолучитьАтрибут
ПолучитьАтрибут(
Имя: Строка,
ПространствоИмен: Строка? = Неопределено
): УзелXmlDom?Неопределено.
- Имя - локальное имя атрибута (без префикса, если используется)
- ПроcтранствоИмен - строковое значение URI пространства имен, по умолчанию
Неопределено.
Если для атрибута используется префикс, то вызов метода без указания пространства имен, связанного с этим префиксом, вернет Неопределено.
ПолучитьАтрибуты
ПолучитьАтрибуты(): ЧитаемыйМассив<УзелXmlDom>ПолучитьДочерниеУзлы
ПолучитьДочерниеУзлы(): ЧитаемыйМассив<УзелXmlDom>