Se la maggior parte delle informazioni sullo schema è necessario è già contenuto all'interno di un altro file XSD , non c'è motivo di duplicare tutte queste informazioni in un altro file . In questo modo è una ricetta per il disastro , perché attraverso la diffusione di informazioni di schema XSD fuori in più file , si crea solo una situazione da incubo se i vostri schema XSD mai bisogno di essere modificato . Invece, si dovrebbe usare il " xsd : import" e " xsi : schemaLocation " tag nei documenti XSD per importare i file XSD in un altro altri documenti XSD che richiedono le stesse informazioni . Questo assicura che quando arriva il momento di aggiornare uno dei tuoi documenti , le modifiche si propagheranno verso altri documenti automaticamente . Istruzioni
1
Aprire il nuovo file XSD in un editor di testo . Per il tutorial , il seguito di molto semplice documento XSD sarà utilizzato :
< xsd < xml version = "1.0" ? ? > : Schema xmlns : xsd = " http : //www.w3.org/2001/XMLSchema " >
< xsd type="xsd:string"/> : nome dell'elemento = tipo "telefono" = " xsd : string " />
< xsd : nome dell'elemento = " indirizzo " si può vedere questo XSD definisce la struttura di un database di persone , ognuna con il loro nome proprio , il numero di telefono e indirizzo. Tuttavia, alcune delle modalità di attuazione sono meno desiderabile : sicuramente c'è una definizione di dati di meglio là fuori per i nomi , indirizzi e numeri di telefono di quanto la semplice stringa . Idealmente , il nostro documento XSD deve essere in grado di individuare i " numeri di telefono " ovviamente non validi come " 12" o , peggio ancora , qualcosa di completamente senza senso come "Non mi sento di dare il mio numero di telefono".
2
Aggiungere la seguente riga al file XSD , appena sotto la " xsd: schema " linea :
< br
namespace="kevinwalkersNS" schemaLocation="address.xsd"/>
Ora , avete importato tre file XSD : uno che definisce un tipo di dati " phoneNumber " , un altro per un tipo di dati "indirizzo" , e un terzo per un tipo di dati " englishNames " . Ognuno di loro è in uno spazio dei nomi denominato " kevinwalkersNS ", e questo impedisce i conflitti con gli altri documenti che possono avere nomi di variabili simili al loro interno .
3
Modifica i tipi di variabili dei vostri elementi che utilizzare i documenti XSD è importate per utilizzare lo schema contenuto all'interno . In questo caso, il " xsd : string" dovrebbe essere sostituito in questo modo:
< xsd : nome dell'elemento = tipo "telefono " = " kevinwalkersNS : phoneNumber " />