КаталогИндекс раздела
НазадОглавлениеВперед


Скалярная функция XMLPARSE

                                               .-STRIP WHITESPACE----.
>>-XMLPARSE--(--DOCUMENT--строковое-выражение--+---------------------+--)-><
                                               '-PRESERVE WHITESPACE-'
 

Схема - SYSIBM. Имя функции не может задаваться как квалифицированное имя.

Функция XMLPARSE разбирает аргумент как XML-документ и возвращает XML-значение.

DOCUMENT

Задает, что строковое выражение, которое будет разбираться, должно вычисляться в правильно форматированный XML-документ, который соответствует XML 1.0, модифицированному XML namespaces recommendation (SQLSTATE 2200M).

строковое-выражение

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

STRIP WHITESPACE или PRESERVE WHITESPACE

Задает сохранение или не сохранение пробельных символов во входном аргументе. Если ничего не задано, по умолчанию принимается STRIP WHITESPACE.

STRIP WHITESPACE

Задает что текстовые узлы, содержащие только пробельные символы длиной до 1000 байт, должны быть сокращены, если только ближайший содержащий элемент не имеет атрибута xml:space='preserve'. Если любой текстовый узел начинается с более, чем 1000 байт пробельных символов, возвращается ошибка (SQLSTATE 54059).

На пробельные символы в секции CDATA эта опция также воздействует. DTD могут иметь объявления DOCTYPE для элементов, но модели содержимого элементов не используются для определения того, убирать пробельные символы или нет.

PRESERVE WHITESPACE

Задает, что все пробельные символы должны быть сохранены даже, если ближайший содержащий элемент имеет атрибут xml:space='default'.

Тип данных результата - XML. Если результат строкового-выражения может быть null, результат может быть null; если результат строковое-выражение - null, результат - значение null.

Примечания:

  1. Поддержка в базах данных не-Unicode и базах данных с многими разделами: XMLPARSE не поддерживается (SQLSTATE 42997).
  2. Кодировка входной строки: Входная строка может иметь объявление XML, которое идентифицирует кодировку символов в XML-документе. Если строка передается в функцию XMLPARSE как символьная строка, она будет преобразована в кодовую страницу сервера базы данных. Эта кодовая страница может отличаться от исходной кодовой страницы и от кодировки, указанной в объявлении XML.

    Следовательно, приложения должны избегать непосредственного использования XMLPARSE с символьной строкой на входе и должны передавать строки, содержащие XML-документы непосредственно, используя host-переменные для поддержки соответствия между внешней кодовой страницей и кодировкой в объявлении XML. Если XMLPARSE должна быть использована в такой ситуации, в качестве аргумента должен быть задан тип BLOB, чтобы обойти преобразование кодовой страницы.


НазадОглавлениеВперед
КаталогИндекс раздела