2008-12-02 9 views
39

J'ai actuellement deux régimes XSD et celui-ci est une version « light » de l'autre. En ce moment j'ai tout dans la version "légère" répétée dans le schéma "complet", mais cela devient une douleur quand j'ai besoin de faire un changement, et cela va contre le principe DRY de toute façon, donc je me demandais s'il y avait un élément cela a servi à inclure un autre schéma dans un schéma, donc je peux avoir mon "complet" hérité du schéma "light" pour réduire les obstacles de maintenance.Puis-je avoir un schéma XML (XSD) comprennent un autre schéma XML?

Répondre

56

Il existe deux méthodes pour cela.

<xsd:include schemaLocation="pathToFile" /> doit être utilisé pour inclure des fichiers du même espace de noms.

<xsd:import namespace="namespace" schemaLocation="pathToFile" /> doit être utilisé pour inclure des fichiers dans un espace de noms différent. Habituellement, vous spécifiez l'espace de noms donné comme targetNamespace du schéma importé.

5

Utilisez le < include> élément, voir par exemple here.

+0

C'était plus facile que je pensais ... de toute façon merci! –