Язык расширяемой разметки XML (eXtensible Markup Language) был создан как средство представления произвольных структур данных. Не останавливаясь подробно на его семантике, заметим, что XML-документ может быть представлен в виде дерева узлов, каждый из которых имеет один узел-родитель. Единственным исключением является корневой узел, представляющий собой узел документа.
Узлы документа могут нести различную функциональную нагрузку, определяемую типом узла. Всю нагрузку по информационному наполнению документа несут узлы типа элемент и атрибут, в связи с чем именно узлы этих типов представляют наибольший интерес при разборе и обработке документа. Язык XML не ограничивает создателя документа в названиях элементов и атрибутов, позволяя давать им осмысленные названия. Это свойство является одной из ключевых особенностей языка. Возможность подчинять один элемент другому позволяет создавать составные структуры данных произвольной иерархической сложности.
Для работы с XML-документами применяется специальное программное обеспечение под общим собирательным названием XML-анализаторы (XML parsers). Это название не вполне точно отражает сущность этого вида ПО, оно появилось, когда анализаторы были способны лишь разобрать существующий документ. Современные анализаторы обладают более широкой функциональностью, например, с их помощью можно создавать новые документы, редактировать существующие и т.д.
Однако возможность давать элементам и атрибутам произвольные, осмысленные названия несет в себе определенную опасность. В самом
деле, предположим, что при описании некоторого товара используется элемент, называемый "Размер". Очевидно, что его содержимое
существенно различается для случаев, если описывается обувь или половая доска. XML позволяет избежать возникающих в данном случае
проблем с помощью применения пространств имен и связанных с ними префиксов. При объявлении элемента имеется возможность задать, с
каким пространством имен связан тот или иной префикс имени (или отсутствие префикса), причем эти определения будут действовать, как для данного элемента, так и для подчиненных ему, если в их объявлении не сделано соответствующего переопределения.
Одним из основных назначений XML является предоставление универсального формата обмена информацией между приложениями, работающими на разных платформах, с различными форматами данных. Для осуществления корректного обмена необходимо, чтобы приложение, осуществляющее выгрузку, создавало XML-документ, имеющий структуру, понятную приложению, осуществляющему разбор документа.
Чем же тогда отличается выгрузка информации в XML формате, а не в любом другом, например, текстовом? Принципиальная разница состоит в том, что для XML- документа имеется возможность задать правила, задающие возможный структурный состав документа и типы данных, которые должна содержать структурная единица документа, фактически создав, таким образом, новый язык на базе XML. Совокупность таких правил образует схему. Существует несколько языков, на которых можно описать такие правила. Самым перспективным на момент написания этого материала считается язык XML Schema, вытесняющий более традиционный DTD (Document Type Definition), возможности которого гораздо скромнее. Пожалуй, основным (хотя далеко не единственным) преимуществом XML Schema является то, что само описание схемы является XML-документом, написанным специальным образом, имеющим строго определенный набор элементов и атрибутов, т.е., в свою очередь, также соответствующий определенной схеме. Применение XML Schema позволяет работать и с самим документом и, при необходимости, с правилами, определяющими его содержание, с применением единого инструмента - анализатора, что предоставляет определенные удобства. Различные фрагменты документа могут соответствовать различным схемам, здесь снова на помощь приходят пространства имен. Каждому пространству имен в соответствие может быть поставлена определенная схема, в процессе разбора документа по префиксу (или его отсутствию) элемента или атрибута определяется контекст пространства имен, к которому он принадлежит. Если данному пространству имен поставлена в соответствие какая-либо схема, содержимое разбираемого элемента или атрибута проверяется с применением сформулированных в данной схеме правил. Совокупность пространств имен с указанием соответствующих им схем называется коллекцией схем.
Процесс проверки соответствия документа какой-либо схеме (схемам) называется валидацией или проверкой состоятельности. Анализаторы,
реализующие такую возможность, называются валидирующими или с проверкой состоятельности. Как правило, проверка состоятельности
осуществляется анализаторами в момент загрузки документа, однако некоторые анализаторы позволяют сделать это по запросу программы,
в произвольный момент времени. Это свойство анализатора можно использовать, например, при создании документа, чтобы проверить его состоятельность перед выгрузкой.
В состав модели входят объекты следующих типов:
Анализатор - базовый объект. Позволяет создать новые объекты типа Документ, КоллекцияСхем.
Документ \
Элемент |
Атрибут | реализуют узлы
ИнструкцияОбработки | соответствующих
Комментарий | типов
Текст |
СекцияДанных /
КоллекцияСхем - специальное средство, позволяющее при загрузке документа применить набор схем (пространств имен), или подменить определенный в документе набор.
ВыборкаУзлов - коллекция элементов и атрибутов, отобранных по совокупности признаков, заданных при создании.
"Прозрачность" объектов
Все входящие в модель объекты (кроме объекта Анализатор) расширяют или переопределяют состав свойств и методов объектов, входящих в состав DOM (Document Object Model) модели, реализованных в анализаторе XML-документов от фирмы Microsoft. Таким образом, если объект, входящий в рассматриваемую модель, не имеет свойства или метода, к которому происходит обращение в вызывающей программе, то объект переадресует вызов данного свойства или метода к объекту-родителю, входящему в состав DOM-модели. Примечание. Рекомендуется использовать свойства и методы объектов, описанные в данном документе, по возможности не прибегая к использованию свойства прозрачности объекта.
Базовый объект
Все объекты, кроме объектов Анализатор, КоллекцияСхем и ВыборкаУзлов, являются разновидностями абстрактного объекта - узел
дерева, в виде которого в объектной модели представляется весь документ. В соответствии с объектно-ориентированным подходом, все
эти объекты наследуют свойства и методы базового объекта. Поэтому, чтобы не описывать общие для всех типов узлов свойства и методы,
эти описания вынесены в отдельный раздел, где рассматриваются методы и свойства абстрактного узла, хотя объект такого типа получить невозможно, все объекты, кроме упомянутых выше, будут лишь его производными.
Примечание. При изучении свойств и методов конкретных объектов может создаться впечатление, что некоторые из них, имея другое наименование, перекрывают какие-то свойства или методы базового объекта, по сути лишь повторяя его действия. Как правило, это не так, и существуют нюансы исполнения, так как метод конкретного объекта специально создан для работы именно с этим типом объекта. В таких случаях рекомендуется использовать свойства и методы конкретного типа объекта.
Синтаксис:
СоздатьДокумент()
Англоязычный синоним:
CreateDocument
Параметры:
нет
Возвращаемое значение:
Узел документа
Описание:
Создает новый объект узла XML документа
Пример:
Документ = Анализатор.СоздатьДокумент() ;
Синтаксис:
СоздатьКоллециюСхем()
Англоязычный синоним:
CreateSchemasCollection
Параметры:
нет
Возвращаемое значение:
Объект коллекции схем
Описание:
Создает новый объект коллекции схем
Пример:
КоллекцияСхемДляПроверки = Анализатор. СоздатьКоллециюСхем() ;
Синтаксис:
Англоязычный синоним:
ParserVersion
Описание:
Возвращает версию компоненты в виде строки, только для чтения.
Пример:
Версия = Анализатор. ВерсияАнализатора ;
Синтаксис:
ВерсияБазовогоАнализатора
Англоязычный синоним:
BaseParserVersion
Описание:
Возвращает в виде строки версию базового анализатора - Microsoftв XML Parser.
Пример:
Версия = Анализатор. ВерсияБазовогоАнализатора;
Синтаксис:
КоличествоПодчиненных()
Англоязычный синоним:
NumberChilds
Параметры:
нет
Возвращаемое значение:
Число, количество узлов, подчиненных данному.
Описание:
Метод возвращает количество узлов, подчиненных данному. В это количество не включается количество узлов-атрибутов.
Пример:
см. пример для метода ПолучитьПодчиненныйПоНомеру.
Синтаксис:
ПолучитьПодчиненныйПоНомеру(НомерУзла )
Англоязычный синоним:
GetChildByNum
Параметры:
НомерУзла числовое выражение, содержащее номер требуемого узла. Нумерация узлов начинается с нуля.
Возвращаемое значение:
объект узла документа определенного типа
Описание:
В совокупности с КоличествоПодчиненных данный метод используется для обхода узлов, подчиненных данному узлу. Порядок обхода совпадает с расположением узлов в документе.
Пример:
Для Сч = 0 По Элемент.КоличествоПодчиненных()-1 Цикл
ПодчУзел = Элемент.ПолучитьПодчиненныйПоНомеру(Сч) ;
. . . . . . .
КонецЦикла ;
Синтаксис:
ДобавитьПодчиненный(НовУзел[, ВставитьПеред])
Англоязычный синоним:
appendChild
Параметры:
НовУзел Объект нового узла
ВставитьПеред Необязательный параметр, тип - узел. Если параметр указан, новый узел будет вставлен перед ним, в противном случае новый узел будет вставлен последним.
Возвращаемое значение:
нет
Описание:
Метод используется для вставки нового узла, созданного с помощью соответствующих методов объекта документа, в список подчиненных данному узлу.
Пример:
ИнструкцияОбработки = Документ.СоздатьУзел(7, "xml") ;
ИнструкцияОбработки.Данные = "version='1.0'" ;
Документ.ДобавитьПодчиненный(ИнструкцияОбработки,
Документ.ЭлементДокумента) ;
Синтаксис:
УдалитьПодчиненный(УдаляемыйУзел)
Англоязычный синоним:
removeChild
Параметры:
УдаляемыйУзел Объект узла, удаляемого из списка подчиненных данному узлу
Возвращаемое значение:
нет
Описание:
Метод удаляет указанный узел из списка узлов, подчиненных данному.
Пример:
ПервыйПодчиненный = Документ.УзелДокумента.ПолучитьПоНомеру(0) ;
Документ.УзелДокумента.УдалитьПодчиненный(ПервыйПодчиненный) ;
Синтаксис:
ВыбратьУзлы(КритерийОтбора)
Англоязычный синоним:
selectNodes
Параметры:
КритерийОтбора Строковое выражение, содержащее критерии отбора узлов в создаваемую коллекцию
Возвращаемое значение:
Объект коллекции узлов, содержащий узлы элементов или атрибутов, которые удовлетворяли критерию отбора, сформулированного в
параметре КритерийОтбора.
Описание:
Метод возвращает объект коллекции узлов, содержащий узлы элементов или атрибутов, которые удовлетворяли критерию отбора,
сформулированного в параметре КритерийОтбора. Запрос формулируется на языке запросов XSL (XSL Pattern Language).
Пример:
// отбираем все элементы Товар
Выборка = Документ.УзелДокумента.ВыбратьУзлы("Товар") ;
Синтаксис:
ВыбратьУзел(КритерийОтбора)
Англоязычный синоним:
selectSingleNode
Параметры:
КритерийОтбора Строковое выражение, содержащее критерии выбора узла
Возвращаемое значение:
Первый узлов, элемент или атрибут, который удовлетворяет критерию отбора, сформулированного в параметре КритерийОтбора.
Описание:
Метод возвращает первый узел, элемент или атрибут, который удовлетворял критерию отбора, сформулированного в параметре
КритерийОтбора. Запрос формулируется на языке запросов XSL (XSL Pattern Language).
Пример:
// находим информацию о товарах
Каталог = Документ.УзелДокумента.ВыбратьУзел("//ИнформацияОТоварах") ;
Синтаксис:
СоздатьПодчиненныйЭлемент(НаимЭлемента[, ВставитьПеред][, ПространствоИмен])
Англоязычный синоним:
createChildElement
Параметры:
НаимЭлемента Строковое выражение, содержащее наименование создаваемого элемента
ВставитьПеред Необязательный параметр. Узел, перед которым следует вставить создаваемый узел элемента.
ПространствоИмен Необязательный параметр, строковое выражение, указывающее пространство имен, в контексте которого создается новый
элемент. Если не указан, анализатор предпринимает попытку создать элемент в контексте пространства имен, определенного у стоящих выше по иерархии узлов документа с учетом префикса, указанного в параметре НаимЭлемента.
Возвращаемое значение:
Объект созданного элемента
Описание:
Предназначением метода является облегчение часто встречающейся операции - процесса создания подчиненного элемента. Если параметр ВставитьПеред не используется, элемент будет вставлен в конец списка.
Пример:
НовыйТовар = Документ.УзелДокумента.СоздатьПодчиненныйЭлемент("Товар") ;
Синтаксис:
ПреобразоватьВ_ИД(СтрИД)
Англоязычный синоним:
ConvertToID
Параметры:
СтрИД Строковое выражение, преобразуемая строка
Возвращаемое значение:
Преобразованная строка, допустимая с точки зрения допустимых значений атрибута, имеющего тип id.
Описание:
Тип атрибута id накладывает определенные ограничения на возможные значения, которые могут быть присвоены этому атрибуту. Данный метод преобразует переданную строку к виду, который допустим для присвоения атрибуту данного типа.
Пример:
СтрИД = ЗначениеВСтрокуВнутр(СпрТовары) ;
ЭлТовар.УстановитьАтрибут("ИДТовара", ЭлТовар.
ПреобразоватьВ_ИД(СтрИД)) ;
Синтаксис:
Тип
Англоязычный синоним:
nodeType
Описание:
Число, соответствующее типу узла в DOM (Document Object Model):
Тип узла Значение свойства
Элемент 1
Атрибут 2
Текст 3
Секция данных 4
Ссылка на компонент 5
Компонент 6
Инструкция обработки7
Комментарий 8
Документ 9
Определение типа 10
документа (DTD)
Фрагмент документа 11
Описание 12
Пример:
Если Узел.Тип = 1 Тогда
// Этот узел - элемент
. . . . . .
КонецЕсли ;
Синтаксис:
ТипСтрока
Англоязычный синоним:
nodeTypeString
Описание:
Строка, соответствующая типу узла в DOM (Document Object Model)
Тип узла Значение свойства
Атрибут attribute
Секция данных cdatasection
Комментарий comment
Документ document
Фрагмент documentfragment
документа
Определение documenttype
типа документа
(DTD)
Элемент element
Компонент entity
Ссылка на entityreference
компонент
Описание notation
Инструкция processinginstruction
обработки
Текст text
Пример:
Сообщить("Тип узла - " + Узел.ТипСтрока) ;
Синтаксис:
ПолноеНаименование
Англоязычный синоним:
nodeName
Описание:
Значение зависит от типа узла. Наибольший интерес представляет для элементов и атрибутов, для которых возвращает наименование полностью, т.е. префикс и наименование, разделенные двоеточием.
Пример:
Сообщить("Полное наименование узла - " + Узел.ПолноеНаименование) ;
Синтаксис:
Наименование
Англоязычный синоним:
baseName
Описание:
Значение зависит от типа узла. Наибольший интерес представляет для элементов и атрибутов, для которых возвращает только наименование, без префикса.
Пример:
Сообщить("Наименование узла - " + Узел.Наименование) ;
Синтаксис:
Префикс
Англоязычный синоним:
prefix
Описание:
Значение зависит от типа узла. Наибольший интерес представляет для элементов и атрибутов, для которых возвращает только префикс.
Пример:
Сообщить("Префикс узла - " + Узел.Префикс) ;
Синтаксис:
Родитель
Англоязычный синоним:
parentNode
Описание:
Узел, которому принадлежит данный узел. Отметим, что узлы атрибутов родителя не имеют и данное свойство для них всегда является пустым значением.
Пример:
ЭлПодразделение = ЭлСотрудник.Родитель ;
Синтаксис:
ДокументВладелец
Англоязычный синоним:
ownerDocument
Описание:
Узел документа, которому принадлежит данный узел.
Пример:
УзелДокумента = Узел.ДокументВладелец ;
Синтаксис:
ТипДанных
Англоязычный синоним:
dataType
Описание:
Строка, соответствующая типу данных, которое имеет значение узла. Влияет на допустимые значения, которые могут быть
присвоены данному узлу, способ их хранения и, для атрибутов, тип возвращаемого значения при запросе свойства Значение.
Пример:
Если Атрибут.Наименование = "Дата" Тогда
Атрибут.ТипДанных = "date" ;
Атрибут.Значение = ТекущаяДата() ;
КонецЕсли ;
Синтаксис:
Текст
Англоязычный синоним:
text
Описание:
Строка соответствующая содержимому узла вместе со всеми принадлежащими ему подчиненными узлами. Заметим, что присвоение этого свойства полностью реорганизует всю структуру подчиненных узлов.
Пример:
Сообщить("Текст узла - " + Узел.Текст) ;
Синтаксис:
Значение
Англоязычный синоним:
nodeValue
Описание:
Строка, соответствующая содержимому узла.
Пример:
Сообщить("Значение узла - " + Узел.Значение) ;
Синтаксис:
ПредставлениеXML
Англоязычный синоним:
xml
Описание:
Строка, представление данного узла со всеми подчиненными узлами в формате XML документа.
Пример:
Сообщить("Представление узла - " + Узел.ПредставлениеXML) ;
Синтаксис:
Загрузить(Откуда)
Англоязычный синоним:
load
Параметры:
Откуда Может быть строкой или объектом OLE Automation, созданным системной функцией СоздатьОбъект и имплементирующим интерфейс IStream или IPersistStream
Возвращаемое значение:
нет
Описание:
В случае, если Откуда является строкой, ее содержимое интерпретируется, как путь к файлу, содержащему XML документ. В случае, если Откуда является объектом OLE Automation, документ загружается из потока, представленного интерфейсом IStream или IPersistStream.
При возникновении ошибочной ситуации во время загрузки или разбора источника генерируется ошибка исполнения.
Пример:
Документ.Загрузить("C:\XMLDocuments\SrcDocument.xml") :
Синтаксис:
Записать(Куда)
Англоязычный синоним:
save
Параметры:
Куда Может быть строкой или COM-объектом, имплементирующим интерфейс IStream или IPersistStream
Возвращаемое значение:
нет
Описание:
В случае, если Куда является строкой, ее содержимое интерпретируется, как путь к файлу, где следует сохранить XML документ.
В случае, если Куда является COM-объектом, документ выгружается в поток, представленный интерфейсом IStream или IPersistStream.
При возникновении ошибочной ситуации во время загрузки или разбора источника генерируется ошибка исполнения.
Пример:
Документ.Записать("C:\XMLDocuments\SrcDocument.xml") :
Синтаксис:
ЗагрузитьИзСтроки(СтрокаИсточник)
Англоязычный синоним:
loadXML
Параметры:
СтрокаИсточник Строка, содержащая XML документ
Возвращаемое значение:
нет
Описание:
При возникновении ошибочной ситуации во время разбора строки генерируется ошибка исполнения.
Пример:
// создать копию документа
Документ2.ЗагрузитьИзСтроки(Документ1.ПредставлениеXML) ;
Синтаксис:
СоздатьУзел(ТипУзла, Наименование, ПространствоИмен)
Англоязычный синоним:
createNode
Параметры:
ТипУзла Числовое или строковое выражение, определяющее тип создаваемого узла. Значение параметра должно быть равно одному из возможных значений свойств узла Тип или ТипСтрока (см. описания упомянутых свойств узла).
Наименование Строковое выражение, для элемента или атрибута - полное наименование, включающее префикс, для инструкции обработки - имя приложения. Для узлов, у которых наименование не имеет смысла, опускается или задается равным пустой строке.
ПространствоИмен Необязательный параметр, строковое выражение. Если этот параметр задан, узел создается в контексте указанного пространства имен с учетом префикса, указанного в наименовании. Если в наименовании префикс отсутствует, данное пространство имен интерпретируется как пространство имен по умолчанию.
Возвращаемое значение:
Созданный узел
Описание:
Данный метод позволяет создать новый узел указанного типа. Новый узел после создания еще не включен в документ, т.к. не имеет узла-родителя, т.е. не является частью иерархической структуры документа. Чтобы узел был включен в документ, нужно воспользоваться методом узла ДобавитьПодчиненный.
Пример:
см. пример из описания метода ДобавитьПодчиненный.
Синтаксис:
НайтиПоИД(ИД)
Англоязычный синоним:
nodeFromID
Параметры:
ИД Строковое выражение, содержащее искомое поле идентификатора
Возвращаемое значение:
Узел элемента
Описание:
Метод позволяет получить элемент, атрибут с типом id которого имеет значение, совпадающее с заданным при вызове метода.
Пример:
ИскомыйЭлемент = Документ.НайтиПоИД("А0001") ;
Синтаксис:
Проверить()
Англоязычный синоним:
validate()
Параметры:
нет
Возвращаемое значение:
нет
Описание:
Данный метод осуществляет проверку состоятельности документа. Если документ не состоятелен, генерируется ошибка исполнения.
Пример:
Документ. Схемы = СхемыДляПроверки ;
Документ.Проверить() ;
Синтаксис:
ЭлементДокумента
Англоязычный синоним:
documentElement
Описание:
По стандарту XML документ может иметь ровно один элемент, принадлежащий непосредственно документу, все остальные элементы документа подчинены (возможно, по многоуровневой иерархии) ему. Этот элемент также называют корневым (root).
Пример:
Сообщить(Документ.ЭлементДокумента.Наименование) ;
Синтаксис:
Кодировка
Англоязычный синоним:
encode
Описание:
Позволяет установить/считать кодировку, в которой сохраняется документ. Задается строкой в соответствии стандартными наименованиями наборов символов для использования в Интерненте. По умолчанию установлена кодировка windows-1251. Со списком определенных наименований наборов символов можно ознакомиться по адресу http://www.isi.edu/in-notes/iana/assignments/character-sets.
Пример:
Документ.Кодировка = "UTF-16" ;
Синтаксис:
ПространстваИмен
Англоязычный синоним:
namespaces
Описание:
Тип - коллекция схем. Предоставляет доступ к использованным в документе пространствам имен.
Пример:
Стр = "Количество использованных в документе пространств имен -";
Стр = Стр + Документ.ПространстваИмен.КоличествоСхем()) ;
Сообщить(Стр) ;
Синтаксис:
Схемы
Англоязычный синоним:
schemas
Описание:
Тип - коллекция схем. Позволяет получить доступ к коллекции схем, установленных документу для проверки состоятельности во время загрузки или проверки состоятельности (см. метод Проверить).
Пример:
См. пример в описании метода Проверить.
Синтаксис:
РазрешатьВнешниеСсылки
Англоязычный синоним:
resolveExternals
Описание:
Возвращает/устанавливает режим разрешения внешних ссылок при загрузке или проверке состоятельности.
Пример:
См. пример в описании метода Проверить.
Синтаксис:
УстановитьАтрибут(НаименованиеАтрибута, Значение)
Англоязычный синоним:
setAttribute
Параметры:
НаименованиеАтрибута Строковое выражение, наименование атрибута, значение которого устанавливается Значение Значение, которое следует присвоить атрибуту. Если атрибуту присвоен определенный тип, выполняется попытка преобразования.
Возвращаемое значение:
нет
Описание:
Устанавливает значение для указанного атрибута. Если указанный атрибут отсутствует, добавляет его.
Пример:
Синтаксис:
ПолучитьАтрибут(НаименованиеАтрибута)
Англоязычный синоним:
getAttribute
Параметры:
НаименованиеАтрибута Строковое выражение, наименование атрибута, значение которого требуется получить
Возвращаемое значение:
Значение атрибута.
Описание:
Если атрибуту установлен тип данных, то возвращаемое значение приводится к соответствующему типу, в противном случае возвращается строка.
Пример:
ДатаПриемаНаРаботу = ЭлСотрудник.ПолучитьАтрибут("ДатаПриема");
Синтаксис:
КоличествоАтрибутов()
Англоязычный синоним:
AttributesNumber
Параметры:
Возвращаемое значение:
Число, количество атрибутов у данного элемента.
Описание:
Метод возвращает количество атрибутов у данного элемента.
Пример:
Для Сч = 0 по Элемент.КоличествоАтрибутов()-1 Цикл
УзелАтрибута = Элемент.ПолучитьУзелАтрибута(Сч) ;
. . . . . . .
КонецЦикла
Синтаксис:
ПолучитьУзелАтрибута(НомерАтрибута)
или
ПолучитьУзелАтрибута(НаименованиеАтрибута)
Англоязычный синоним:
getAttributeNode
Параметры:
НомерАтрибута Числовое выражение, номер требуемого узла атрибута из списка принадлежащих элементу атрибутов
НаименованиеАтрибута Строковое выражение, наименование требуемого узла атрибута из списка принадлежащих элементу атрибутов
Возвращаемое значение:
Узел атрибута
Описание:
Метод позволяет получить объект узла атрибута по номеру или по наименованию.
Пример:
АтДатыПриема = ЭлСотрудник.ПолучитьУзелАтрибута("ДатаПриема") ;
см. также пример из описания метода КоличествоАтрибутов
Синтаксис:
УдалитьАтрибут(УзелАтрибута)
Англоязычный синоним:
removeAttribute
Параметры:
УзелАтрибута Объект узла атрибута, который требуется удалить
Возвращаемое значение:
нет
Описание:
Метод удаляет указанный атрибут из списка принадлежащих данному элементу.
Пример:
ЭлСотрудник.УдалитьАтрибут(ЭлСотрудник.ПолучитьУзелАтрибута("Да;
Синтаксис:
ДобавитьАтрибут(НаименованиеАтрибута)
Англоязычный синоним:
addAttribute
Параметры:
НаименованиеАтрибута Строковое выражение, наименование добавляемого атрибута
Возвращаемое значение:
Узел атрибута
Описание:
Метод добавляет элементу новый атрибут.
Пример:
Атр = Документ.ЭлементДокумента.ДобавитьАтрибут("ДатаСоздания") ;
Атр.Значение = ТекущаяДата() ;
Синтаксис:
УстановитьПространствоИмен (ПространствоИмен[, Префикс])
Англоязычный синоним:
setNamespace
Параметры:
ПространствоИмен Строковое выражение, наименование пространства имен
Префикс Необязательный параметр. Строковое выражение, префикс, ставящийся в соответствие пространству имен
Возвращаемое значение:
нет
Описание:
Метод устанавливает соответствие префикса в полных наименованиях элементов и атрибутов некоторому пространству имен для элементов, починенных данному. Если в вызове отсутствует параметр Префикс, то устанавливается пространство имен для элементов и атрибутов без префикса, т.е. пространство имен "по умолчанию".
Данный метод не может применяться для установки контекста пространства имен для данного элемента, т.е. префикс в имени данного элемента и параметр Префикс не должны совпадать или не должны быть оба пустыми. Контекст пространства имен может быть присвоен элементу только при его создании.
Пример:
Док.ЭлементДокумента.УстановитьПространствоИмен("urn:schemas-mi
Синтаксис:
ИмяТега
Англоязычный синоним:
tagName
Описание:
Строка - наименование тега элемента.
Пример:
Сообщить("Тег элемента - " + Элемент.ИмяТега) ;
Все методы и свойства наследуются от базового узла. Однако, имеется особенность - для узлов этого типа значение свойства Родитель всегда пустое.
Добавляет новую схему в коллекцию схем, связывая уникальный идентификатор ресурса пространства имен с указанной схемой.
Синтаксис:
ДобавитьСхему(УникальныйИДРесурсаПространстваИмен, СпецификаторСхемы)
Англоязычный синоним:
add
Параметры:
УникальныйИДРесурсаПространстваИмен Строковое выражение, пространство имен
СпецификаторСхемы Строковое выражение или объект документа с загруженной схемой (схема также является XML документом, отвечающим определенным требованиям). Если этот параметр является строкой, то она интерпретируется как путь к файлу, содержащему схему, и схема загружается из указанного файла.
Возвращаемое значение:
нет
Описание:
Данный метод добавляет новую схему в коллекцию схем, связывая уникальный идентификатор ресурса пространства имен с указанной схемой.
Пример:
КоллекцияСхем.ДобавитьСхему("http://server/schemas/Sc1.xml","C: ;
Синтаксис:
ПолучитьСхему(УникальныйИДРесурсаПространстваИмен)
или
ПолучитьСхему(НомерСхемы)
Англоязычный синоним:
get
Параметры:
УникальныйИДРесурсаПространстваИмен Строковое выражение, пространство имен
НомерСхемы Числовое выражение, номер схемы в коллекции. Нумерация схем в коллекции начинается с нуля.
Возвращаемое значение:
Узел элемента Schema из документа схемы, связанной с затребованным пространством имен или номером схемы в коллекции.
Описание:
В соответствии со стандартом документ схемы должен иметь элемент Schema в качестве элемента документа (корневого элемента). Таким образом, данный метод позволяет получить корневой элемент схемы, затребованной по номеру или пространству имен.
Пример:
ЭлСхемы = Документ.Схемы.ПолучитьСхему("http://server/schemas/Sc1.xml") ;
См. также пример из описания свойства КоличествоСхем.
Синтаксис:
УдалитьСхему(УникальныйИДРесурсаПространстваИмен)
Англоязычный синоним:
remove
Параметры:
УникальныйИДРесурсаПространстваИмен Строковое выражение, пространство имен
Возвращаемое значение:
нет
Описание:
Метод удаляет из коллекции схему, связанную с указанным пространством имен.
Пример:
КоллекцияСхем.УдалитьСхему("http://server/schemas/Sc1.xml") ;
Синтаксис:
УникальныйИДРесурсаПространстваИмен(НомерВКоллекции)
Англоязычный синоним:
namespaceURI
Параметры:
НомерВКоллекции Числовое выражение, номер схемы в коллекции. Нумерация схем в коллекции начинается с нуля.
Возвращаемое значение:
Строка, содержащая уникальный идентификатор ресурса пространства имен.
Описание:
Метод используется для получения уникальных идентификаторов ресурсов пространств имен, входящих в коллекцию.
Пример:
Сообщить(Документ.ПространстваИмен.УникальныйИДРесурсаПространс
Синтаксис:
КоличествоСхем
Англоязычный синоним:
length
Описание:
Число, количество схем в коллекции.
Пример:
Для Сч = 0 По Документ.Схемы.КоличествоСхем-1 Цикл
ЭлСхемы = Документ.Схемы.ПолучитьСхему(Сч) ;
. . . . . . .
КонецЦикла ;
Синтаксис:
ПолучитьУзел(Номер)
Англоязычный синоним:
item
Параметры:
Номер Числовое выражение, номер узла в выборке. Нумерация узлов в выборке начинается с нуля.
Возвращаемое значение:
Узел документа (элемент или атрибут).
Описание:
Метод используется для организации доступа к отдельным узлам документа, вошедшим в выборку.
Пример:
Выборка = Документ.ЭлементДокумента.ПолучитьВыборку("Товар") ;
Для Сч = 0 По Выборка.КоличествоУзлов-1 Цикл
ЭлТовар = Выборка.ПолучитьУзел(Сч) ;
. . . . . . .
КонецЦикла ;
Синтаксис:
КоличествоУзлов
Англоязычный синоним:
length
Описание:
Число, количество узлов, содержащихся в выборке.
Пример:
См. пример из описания метода ПолучитьУзел.