Link Search Menu Expand Document

ЧтениеXml

Стд::Xml::ЧтениеXml
Базовые типы: Объект

Иерархия типа

graph BT;
ЧтениеXml-->Объект;

Объект для последовательного чтения XML-данных. Чтение XML-данных выполняется потоково, в конкретный момент времени объект позиционируется на конкретном узле XML. При ошибке разбора XML-данных вызывается исключение ИсключениеЧтенияXml. Типы данных разбираются в соответствии со стандартом XML.

Сравнение ссылочное


Конструкторы

ЧтениеXml

ЧтениеXml(
  Источник: Строка,
  Настройки: НастройкиЧтенияXml)
Перегрузка:
ЧтениеXml(Источник: ПотокЧтения, Настройки: НастройкиЧтенияXml, Кодировка: Кодировка|Строка = Кодировка.Utf8)

Конструктор чтения XML из строки Источник с настройками Настройки.


ЧтениеXml

ЧтениеXml(
  Источник: ПотокЧтения,
  Настройки: НастройкиЧтенияXml,
  Кодировка: Кодировка|Строка = Кодировка.Utf8)
Перегрузка:
ЧтениеXml(Источник: Строка, Настройки: НастройкиЧтенияXml)

Свойства

Автономный

ТолькоЧтение Автономный: Булево

Значение атрибута standalone элемента объявления XML. Если атрибут не указан или объявление не прочитано (отсутствует), то Ложь.


ВерсияXml

ТолькоЧтение ВерсияXml: Строка?

Версия спецификации XML, которой соответствует документ XML (получается из объявления XML).


ВидУзла

ТолькоЧтение ВидУзла: ВидУзлаXml?

Вид текущего узла или Неопределено, если чтение еще не начато или уже завершено.


Значение

ТолькоЧтение Значение: Строка

Текстовое значение текущего узла XML. Если для узла текстовое значение не определено, то содержит пустую строку. Узлы, для которых определено текстовое значение:

  • СекцияCDATA - содержимое секции CDATA,
  • Комментарий - содержимое комментария,
  • ОпределениеТипаДокумента - внутреннее подмножество (internal subset),
  • ИнструкцияОбработки - содержимое инструкции обработки, исключая адрес (target),
  • Текст - содержимое текстового узла,
  • СсылкаНаСущность - текст сущности.

Учитывается значение параметра ИгнорироватьПробелыВЗначениях. После окончания текста XML возвращает пустую строку.


ИмеетЗначение

ТолькоЧтение ИмеетЗначение: Булево

Признак что текущий узел содержит текстовое значения. После окончания текста XML возвращает Ложь


ИмеетИмя

ТолькоЧтение ИмеетИмя: Булево

Признак наличия у текущего узла имени. После окончания текста XML возвращает Ложь


Имя

ТолькоЧтение Имя: Строка

Имя текущего узла XML. Содержит квалифицированное имя для текущего узла. Имя зависит от типа текущего узла:

  • ОпределениеТипаДокумента - имя типа документа,
  • НачалоЭлемента - имя элемента,
  • КонецЭлемента - имя элемента,
  • СсылкаНаСущность - имя ссылки на сущность,
  • ИнструкцияОбработки - адрес инструкции обработки (target).

Для узлов, у которых имя не определено, свойство содержит пустую строку. После окончания текста XML возвращает пустую строку.


ЛокальноеИмя

ТолькоЧтение ЛокальноеИмя: Строка

Локальное имя текущего узла XML. Содержит неквалифицированное имя для текущего узла. После окончания текста XML возвращает пустую строку.


Префикс

ТолькоЧтение Префикс: Строка

Префикс текущего узла. Имеет смысл для узлов типов НачалоЭлемента, КонецЭлемента. Для узлов остальных типов или после окончания текста XML возвращает пустую строку.


ПространствоИмен

ТолькоЧтение ПространствоИмен: Строка

URI пространства имен текущего узла. После окончания текста XML возвращает пустую строку.


Методы

ЗначениеАтрибута

ЗначениеАтрибута(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Строка?

Возвращает строку, представляющую значение атрибута с именем Имя и пространством имен ПространствоИмен.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


ЗначениеАтрибутаКакБайты

ЗначениеАтрибутаКакБайты(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Байты

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен как шестнадцатеричное число и преобразует к значению типа Байты.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Байты

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакБайтыBase64

ЗначениеАтрибутаКакБайтыBase64(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Байты

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен как число в записи Base64 и преобразует к значению типа Байты.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Байты

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакБулево

ЗначениеАтрибутаКакБулево(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Булево

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Булево.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Булево

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакВремя

ЗначениеАтрибутаКакВремя(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Время

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Время.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Время

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакДата

ЗначениеАтрибутаКакДата(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Дата

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Дата.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - если значение не может быть преобразовано к типу Дата

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакДатаВремя

ЗначениеАтрибутаКакДатаВремя(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): ДатаВремя

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа ДатаВремя.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - значение не может быть преобразовано к типу ДатаВремя

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакДлительность

ЗначениеАтрибутаКакДлительность(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Длительность

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Длительность.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - значение не может быть преобразовано к типу Длительность

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакМомент

ЗначениеАтрибутаКакМомент(
  Имя: Строка,
  ЧасовойПояс: ЧасовойПояс
): Момент
Перегрузка:
ЗначениеАтрибутаКакМомент(Имя: Строка, ПространствоИмен: Строка? = Неопределено, ЧасовойПояс: ЧасовойПояс): Момент

Читает значение атрибута с именем Имя преобразует к значению типа Момент часовом поясе ЧасовойПояс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - значение не может быть преобразовано к типу Момент

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакМомент

ЗначениеАтрибутаКакМомент(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено,
  ЧасовойПояс: ЧасовойПояс
): Момент

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Момент. Если у значения атрибута не указан часовой пояс, для преобразования будет использован часовой пояс, указанный в аргументе ЧасовойПояс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - значение не может быть преобразовано к типу Момент

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакУуид

ЗначениеАтрибутаКакУуид(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Ууид

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Ууид.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - значение не может быть преобразовано к типу Ууид

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаКакЧисло

ЗначениеАтрибутаКакЧисло(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Число

Читает значение атрибута с именем Имя и пространством имен ПространствоИмен и преобразует к значению типа Число.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML

ИсключениеЧтенияXml - значение не может быть преобразовано к типу Число

ИсключениеНедопустимыйАргумент - если не найден атрибут с именем Имя в пространстве имен ПространствоИмен


ЗначениеАтрибутаПоИндексу

ЗначениеАтрибутаПоИндексу(Индекс: Число): Строка

Возвращает строку, представляющую значение атрибута с указанным индексом Индекс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


ИмяАтрибута

ИмяАтрибута(Индекс: Число): Строка

Возвращает полное имя атрибута по индексу Индекс. Совпадает с локальным, если не задан префикс атрибута. Иначе - полное имя имеет вид: префикс_атрибута:локальное_имя_атрибута.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


КоличествоАтрибутов

КоличествоАтрибутов(): Число

Возвращает количество атрибутов у последнего прочитанного узла XML.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


КоличествоОбъявленийПространствИмен

КоличествоОбъявленийПространствИмен(): Число

Возвращает количество объявлений пространств имен у последнего прочитанного узла XML.

Исключения

ИсключениеЧтенияXml - если тип текущего узла не НачалоЭлемента

Примеры

<!-- http://xmlns - пространство имен по умолчанию,
     http://ns - пространство имен "ns" -->
<tag xmlns="http://xmlns"
     xmlns:ns="http://ns"
     ns:attr="value"/>
метод ПолучитьКоличествоОбъявленийПространствИмен(СтрокаXml:Строка): Число
  знч Чтение = новый ЧтениеXml(СтрокаXml)
  Чтение.Следующий()
  
  возврат Чтение.КоличествоОбъявленийПространствИмен() // 2
;  

ЛокальноеИмяАтрибута

ЛокальноеИмяАтрибута(Индекс: Число): Строка

Возвращает локальное имя атрибута по индексу Индекс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


ОбъявлениеПространстваИмен

ОбъявлениеПространстваИмен(Индекс: Число): Строка

Возвращает URI объявления пространства имен с указанным индексом Индекс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


ПрефиксАтрибута

ПрефиксАтрибута(Индекс: Число): Строка

Возвращает префикс атрибута с указанным индексом Индекс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


ПрефиксОбъявленияПространстваИмен

ПрефиксОбъявленияПространстваИмен(Индекс: Число): Строка

Возвращает префикс объявления пространства имен с указанным индексом Индекс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


Пропустить

Пропустить(): Булево

Пропускает дочерние узлы текущего узла и позиционируется в начало следующего узла. Если текущий узел не содержит подчиненных узлов или если его тип не НачалоЭлемента, то вызов метода аналогичен Следующий, в противном случае осуществляется пропуск всех дочерних узлов и осуществляется позиционирование на следующем узле. Возвращает Ложь, если текст XML завершился.

Исключения

ИсключениеЧтенияXml - если произошла ошибка при чтении XML


ПространствоИменАтрибута

ПространствоИменАтрибута(Индекс: Число): Строка

Возвращает пространство имен атрибута по индексу Индекс.

Исключения

ИсключениеНедопустимоеСостояние - если: * тип текущего узла не НачалоЭлемента * после окончания текста XML


ПрочитатьСодержимоеКакБайты

ПрочитатьСодержимоеКакБайты(): Байты

Читает содержимое узла как шестнадцатеричное число и преобразует к значению типа Байты. При преобразовании не учитываются пробельные символы. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Байты


ПрочитатьСодержимоеКакБайтыBase64

ПрочитатьСодержимоеКакБайтыBase64(): Байты

Читает содержимое узла как число в записи Base64 и преобразует к значению типа Байты. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Байты


ПрочитатьСодержимоеКакБулево

ПрочитатьСодержимоеКакБулево(): Булево

Читает содержимое узла и преобразует к логическому значению:

  • значения true и 1 преобразуются в Истина,
  • значения false и 0 преобразуются в Ложь. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к логическому типу


ПрочитатьСодержимоеКакВремя

ПрочитатьСодержимоеКакВремя(): Время

Читает содержимое узла и преобразует к значению типа Время. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Время


ПрочитатьСодержимоеКакДатаВремя

ПрочитатьСодержимоеКакДатаВремя(): ДатаВремя

Читает содержимое узла и преобразует к значению типа ДатаВремя. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу ДатаВремя


ПрочитатьСодержимоеКакДату

ПрочитатьСодержимоеКакДату(): Дата

Читает содержимое узла и преобразует к значению типа Дата. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Дата


ПрочитатьСодержимоеКакДлительность

ПрочитатьСодержимоеКакДлительность(): Длительность

Читает содержимое узла и преобразует к значению типа Длительность. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Длительность


ПрочитатьСодержимоеКакМомент

ПрочитатьСодержимоеКакМомент(ЧасовойПояс: ЧасовойПояс): Момент

Читает содержимое узла и преобразует к значению типа Момент. Если у содержимого узла не указан часовой пояс, для преобразования будет использован часовой пояс, указанный в аргументе ЧасовойПояс. Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Момент


ПрочитатьСодержимоеКакСтроку

ПрочитатьСодержимоеКакСтроку(): Строка

ПрочитатьСодержимоеКакУуид

ПрочитатьСодержимоеКакУуид(): Ууид

Читает содержимое узла и преобразует к значению типа Ууид.

Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к типу Ууид


ПрочитатьСодержимоеКакЧисло

ПрочитатьСодержимоеКакЧисло(): Число

Читает содержимое узла и преобразует к числовому значению.

Перед преобразованием от значения отрезаются пробельные символы в начале и конце. После вызова метода выполнено позиционирование на соответствующем узле типа КонецЭлемента.

Исключения

ИсключениеЧтенияXml - если: * тип текущего узла не НачалоЭлемента * узел имеет вложенные узлы * значение не может быть преобразовано к числовому типу


Следующий

Следующий(): Булево

Считывает очередной узел XML. Возвращает признак, что был прочитан очередной узел (Ложь - текст XML завершился). При этом следующим свойствам присваиваются значения, соответствующие прочитанным данным:

Исключения

ИсключениеЧтенияXml - при ошибке чтения XML.


СледующийДо

СледующийДо(
  Имя: Строка,
  ПространствоИмен: Строка? = Неопределено
): Булево

Читает узлы до тех пор, пока не встретит узел с именем Имя в пространстве имен ПространствоИмен. Возвращает Истина, если текущий узел является искомым, иначе Ложь (текст XML завершился).


ЭтоПустойЭлемент

ЭтоПустойЭлемент(): Булево

Возвращает признак того, что текущий узел имеет тип НачалоЭлемента и представлен в XML узлом вида <tag/>.


Список унаследованных методов

Объект