XML-схема: пустое targetNamespace - PullRequest
5 голосов
/ 07 апреля 2009

Законно ли использование атрибута targetNamespace или пустого атрибута в схеме XML?

Если так, то что это значит, мы «добавляем» что-то в «пустое пространство имен» (которое всегда существует) или создаем «анонимное пространство имен», которое не связано с другими схемами?

Как будет выглядеть экземпляр XML-документа, нужно ли явно ограничивать элементы в некотором пространстве имен?

Ответы [ 2 ]

11 голосов
/ 08 апреля 2009

См. XML-схема Часть 0: Учебник для начинающих для очень краткого описания того, как работают необъявленные targetNamespaces.

Что касается пустого targetNamespace, это недопустимо. Из spec :

Поскольку пустая строка не является допустимым именем пространства имен, указание пустой строки для targetNamespace является непоследовательным и не является тем же, что не указание его вообще. Соответствующей формой документа схемы, соответствующей · схеме ·, компоненты которой не имеют {целевого пространства имен}, является та, для которой вообще не указан атрибут targetNamespace.

3 голосов
/ 08 апреля 2009

Да, определенно. Пространства имен XML являются необязательными - вы можете оставить их, если хотите, и если у вас не возникнут какие-либо проблемы с неоднозначными элементами XML в вашем «мире XML».

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