Язык модификации XML-данных (XML DML)

Язык модификации XML-данных (XML DML) является расширением языка XQuery. Как определено консорциумом W3C, в языке XQuery отсутствует часть, касающаяся манипулирования данными (DML). Язык XML DML, представленный в этом разделе, вместе с языком XQuery обеспечивает полнофункциональный язык запросов и модификации данных, который можно использовать для данных типа xml.

В язык XML DML добавлены следующие ключевые слова с учетом регистра, которые отсутствуют в языке XQuery:

  • insert
  • delete
  • replace value of

Как описывается в разделе Тип данных xml, можно создавать переменные и столбцы типа xml и присваивать им XML-документы или фрагменты XML-документов. Чтобы модифицировать или обновить эти экземпляры XML, выполните следующее:

Заметим, что существуют атрибуты, которые нельзя добавить, удалить или изменить их значение. Например:

  • Для типизированного или нетипизированного xml это атрибуты xmlns, xmlns:* и xml:base.
  • Для типизированного xml это атрибуты xsi:nil и xsi:type.

К другим ограничениям также относятся:

  • Для типизированного или нетипизированного xml невозможно успешное добавление атрибута xml:base.
  • Для типизированного xml невозможно успешное удаление или модификация атрибута xsi:nil. Для нетипизированного xml можно удалить атрибут или модифицировать его значение.
  • Для типизированного xml невозможна успешная модификация значения атрибута xs:type. Для нетипизированного xml можно модифицировать значение атрибута.

При модификации экземпляра типизированного xml конечный формат должен являться допустимым экземпляром типа, иначе возвращается ошибка проверки.

См. также

Справочник

insert (XML DML)
delete (XML DML)
replace value of (XML DML)

Основные понятия

Типизированный и нетипизированный XML
Формирование XML-экземпляров
Тип данных xml
Образцы приложений XML

Другие ресурсы

Методы типа данных XML

Справка и поддержка

Получение помощи по SQL Server 2005