2010-05-26 3 views
1

Следующий XML был порождаемых сериализации объектов .Net:.Net Xml Serialize - XSD Определение для нескольких пространств имен

<?xml version="1.0" encoding="utf-8"?> 
<Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://EPS.WebServices/WebServiceSchema" > 
    <Method xmlns="http://EPS.Library/RequestSchema">PackPlacementUpdate</Method> 
    <Type xmlns="http://EPS.Library/RequestSchema">PackPlacementUpdate</Type> 
</Request> 

Я использую XSD для создания схемы. Однако (я думаю), потому что существует несколько пространств имен, генерируются два разных файла схемы. Мы будем предоставлять файл XSD извне, и я обеспокоен тем, что два файла вызовут путаницу.

Не меняя пространства имен классов .Net, существует ли способ создать один файл схемы XSD, а не два?

Спасибо.

ответ

0

Нет!

Схема объявляет целевое пространство имен; каждая схема определяет элементы и атрибуты в одном пространстве имен.

Кроме того, существует взаимно однозначное сопоставление между .xsd (определение схемы XML файл) и XML-схема. Вы не можете определить более одной схемы в файле .xsd.

Следовательно, если у вас есть элементы, принадлежащие нескольким пространствам имен, и если вы хотите определить эти элементы в XML-схеме W3C, вам потребуются несколько файлов .xsd.

Смежные вопросы