Намерен ли разработчик разместить пространство имен XSD на этом http://my.example.com? server и просто не дошли до его реализации?
Это возможно, но не обязательно; без прочтения мыслей разработчика невозможен твердый ответ. Рациональный разработчик может поступить так или иначе, даже если многие люди, включая меня, скажут, что лучше и рациональнее размещать документацию по пространству имен (возможно, в форме документа схемы, возможно, в форме документа RDDL, возможно, в другом form) в URI пространства имен.
Или это какая-то функция безопасности, в которой URL-адрес доступен веб-службе только через XML-файл конфигурации, эффективно определяющий этот URL-адрес как виртуальный, когда он фактически обращается к локальному хосту или аналогичному?
Не невозможно, но это не метод проектирования, который, кажется, широко задокументирован. (По крайней мере, есть по крайней мере один специалист по XML, который никогда не слышал, чтобы это предлагалось.) Поэтому я предполагаю, что ответ таков: вероятно, это не входило в намерения первоначального автора.
Можете ли вы указать мне авторитетный источник, где я могу прочитать об этом?
Официальным источником пространств имен XML являются документы "Пространства имен в XML 1.0 (третье издание)" и "Пространства имен в XML 1.1 (Второе издание)", под редакцией Тима Брей и др. и опубликованы Консорциумом World Wide Web в 2009 и 2006 годах соответственно.
Трудно сжато доказать обратное, но изучение спецификации должно прояснить, что она не налагает требования о возможности разыменования URI, используемых в качестве имен пространств имен. В разделе 2.1 говорится: «Пространство имен XML идентифицируется ссылкой URI [RFC3986]», но ничто в спецификации не требует разыменования имен пространств имен. Раздел 2.3 определяет процесс сопоставления имени пространства имен как проверку идентичности строки и указывает, что это означает, что эквивалентные формы одного и того же URI (например, http://www.example.org/wine
и http://www.Example.org/wine
) не считаются равными для целей сопоставления имен пространства имен. Это не имело бы никакого смысла, если бы процессоры пространств имен должны были разыменовывать имена пространств имен.
Группа технической архитектуры W3C (TAG) обсуждает этот комплекс вопросов с точки зрения более высокого уровня в своем документе Архитектура всемирной паутины, том первый. См. в частности
- раздел 3.5 (в котором излагается принцип, согласно которому «Ссылка не подразумевает разыменование»: «Разработчик приложения или автор спецификации НЕ ДОЛЖЕН требовать сетевого поиска представлений каждый раз, когда на них ссылаются».
- раздел 4.5.3 о пространствах имен XML
- раздел 4.5.4 о документах пространства имен (рекомендуется TAG)
См. также этот связанный вопрос (и мой ответ на Это).
если URL-адрес пространства имен указывает на ресурс, обязательно ли это означает, что схема WSDL должна обращаться к нему во время выполнения?
Нет. WSDL может налагать дополнительные правила на использование имен пространств имен в документах WSDL, но фрагмент документа, который вы цитируете, взят из документа схемы XSD. Спецификация XSD не требует разыменования имен пространств имен (хотя и предлагает это как одну из возможных стратегий поиска документов схемы XSD для использования в эпизоде проверки).
Если ответ отрицательный, может ли он обращаться к нему во время выполнения? или это только для чтения человеком?
Процессорам не запрещено разыменовывать имя пространства имен, но некоторые авторитеты не одобряют этого. Когда широко распространенное программное обеспечение разыменовывает имена пространств имен при каждом запуске или при каждом чтении XML-документа, результатом может быть чрезмерный и ненужный сетевой трафик. W3C страдает от такого ненужного трафика в течение нескольких лет и теперь обслуживает все схемы с искусственно низкими скоростями, чтобы убедить пользователей жаловаться поставщикам их программного обеспечения. (Подробности см. в сообщении в блоге Теда Гилда от 2008 года. )
person
C. M. Sperberg-McQueen
schedule
23.07.2013