4.1.3.7. Комментарии
XML-документ может содержать комментарии, которые записываются так же, как и в HTML:
Текст комментария может состоять из любых символов, кроме двух минусов подряд («—«). Кроме этого, текст комментария не должен заканчиваться символом «—«.
Элемент рассматривается как комментарий
4.1.4. Пространства именXml
XML позволяет создавать наборы элементов с любыми синтаксически допустимыми именами и определять с их помощью логическую структуру документов практически произвольной сложности.
Часто случается, что различные логические схемы документов используют одни и те же имена элементов в различных смыслах. Тогда в случае, если в одном и том же документе необходимо использовать элементы нескольких различных схем, будет невозможно определить, какой элемент относится к какой схеме, и какие схемы были использованы в документе. Для решения этих проблем в XML используются пространства имен (namespaces).
Чтобы различать схемы документов, каждой из них ставится в соответствие уникальный идентификатор ресурса URI(UniversalResourceIdentifier). Две схемы будут считаться тождественными тогда и только тогда, когда их уникальные идентификаторы будут совпадать. Очень часто в качестве URI используютсяURLразличных Web-сайтов.
Для того чтобы определить, какой схеме принадлежит тот или иной элемент в документе, можно использовать механизм префиксов. Префиксы пространств имен задаются как атрибуты с именами, начинающимися последовательностью xmlns, и имеют следующий вид:
префикс:элементxmlns:префикс >
Префиксы, которые были определены в некотором элементе, могут быть использованы в его собственном имени, а также в именах всех элементов, которые включены в него, если они не переопределены другим объявлением.
Поздравляю с днем рождения!
В этом примере префикс e—mailотносится не только к элементуmessage, но и к содержащемуся в нем элементуtext.
Принадлежность элементов той или иной схеме определяется не префиксами, а тем, какие уникальные идентификаторы поставлены этим префиксам в соответствие. То есть два элемента с разными префиксами, заданными одинаковыми идентификаторами, будут считаться принадлежащими одной схеме.
to>you@yourAddress.comto>
Поздравляю с днем рождения!
элементы messageиtextимеют различные префиксы, но, несмотря на это, принадлежат одной и той же схеме.
В одном элементе можно определять несколько префиксов пространств имен. Как правило, при использовании множества префиксов, все они определяются в корневом элементе, а затем используются по всему документу.
xmnls:memo=»http://memo.org/schema»>
Поздравляю с днем рождения!
Определение пространства имен в виде
элементxmlns >
позволяет определять пространства имен по умолчанию, т.е. опускать префиксы в именах элементов.
Фрагмент в предыдущем примере может быть переписан следующим образом:
xmnls:memo=»http://memo.org/schema»>
Поздравляю с днем рождения!
Пространство имен по умолчанию отменено, если в качестве значения атрибута xmnlsуказать пустую строку.
xmnls:memo=»http://memo.org/schema»>
Поздравляю с днем рождения!
Здесь действие пространства имен по умолчанию отменено для элемента text.
Префиксы можно указывать не только для элементов, но и для атрибутов элементов.
xmlns:passenger=http://www.w3.org/TR/REC—html40> name html:class >Layman, Aname> seat passenger:class
Здесь для элемента seatопределены два атрибута с именемclass, однако, за счет использования различных префиксов имена этих атрибутов (точнее их расширенные имена) считаются разными.
Расширенные имена считаются совпадающими, если их локальные части равны и, при этом, они относятся к одному пространству имен. Префикс в расширенном имени может быть опущен. В таком случае идентификатор пространства имен будет либо выбран по умолчанию (если имеется соответствующее объявление), либо будет нулевым.
Файл: Создан: 31.01.2008 Модифицирован: 29.07.2008 Автор: Шонин В.А.