С пространствами имен XHTML, должен ли каждый атрибут иметь пространство имен тоже? - PullRequest
2 голосов
/ 18 марта 2011

При расширении XHTML для очень простой CMS мне интересно, стоит ли мне использовать

<cms:include document="foo/bar" />

или

<cms:include cms:document="foo/bar" />

Учитывая документ, объявленный следующим образом:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:cms="http://spongegroup.com/ns/cms">

(в основном идея состоит в том, чтобы создать простой синтаксический анализатор, который заносит в белый список несколько тегов XHTML и добавляет пару моих собственных).

Необходим префикс cms: для атрибутов элементачто уже находится в пространстве имен cms:

1 Ответ

3 голосов
/ 18 марта 2011

Вам не нужен префикс cms: для атрибутов cms: элементов, поскольку значение этих атрибутов определяется элементом, к которому они принадлежат.

См. Рекомендацию XML namespace : «интерпретация нефиксированных атрибутов определяется элементом, на котором они появляются».

С технической точки зрения, однако, атрибуты без префиксов принадлежат пустому пространству имен.

Ответ отредактирован 2011-06-06 для исправления вводящего в заблуждение предложения. Спасибо комментаторам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...