В настоящее время у меня две схемы XSD, а одна - «легкая» версия другой. Прямо сейчас у меня есть все в «легкой» версии, повторенной в «полной» схеме, но это становится болью, когда мне нужно внести изменения, и в любом случае это противоречит принципу DRY, поэтому мне было интересно, есть ли элемент который включал в схему другую схему, поэтому я могу получить «полное» наследование от «легкой» схемы, чтобы уменьшить трудности обслуживания.Могу ли я иметь одну XML-схему (XSD), которая включает в себя еще одну XML-схему?
39
A
ответ
56
Для этого есть два метода.
<xsd:include schemaLocation="pathToFile" />
следует использовать для включения файлов одного и того же пространства имен.
<xsd:import namespace="namespace" schemaLocation="pathToFile" />
следует использовать для включения файлов в другое пространство имен. Обычно вы укажете пространство имен, указанное как targetNamespace импортированной схемы.
5
Используйте элемент < include>, см., Например, here.
Это было легче, чем я, хотя ... в любом случае спасибо! – 2008-12-02 03:53:59