2009-12-23 18 views
20

Ho un XSD che sta attraversando una transizione da un insieme di elementi a un altro. Durante la transizione, ci sarà il codice che aspetta i nuovi elementi e il codice che si aspetta i vecchi elementi. Quindi ho bisogno di mantenere i vecchi elementi nell'XSD; Sto documentandoli come deprecati (usando il testo libero in un elemento xs: documentation).Elemento segno come deprecato in XSD

C'è un modo di contrassegnare un elemento come deprecato in modo tale che uno strumento come xmllint avviserà automaticamente se qualcuno usa un elemento deprecato?

risposta

18

Creare un nuovo schema, con un nuovo spazio dei nomi. Chiama questa "versione 2". Se scegli di supportare la versione 1 XSD e la versione 2 XSD nella tua applicazione va bene, ma tienili separati e non provare a sovrapporre i due uno sopra l'altro - specialmente se stai cercando di impedire alle persone di usare il versione 1.

Questa è la pena di guardare quanto descrive alcune delle cose che hai a che fare con: archive of http://www.pluralsight.com/community/blogs/tewald/archive/2006/04/19/22111.aspx

mi rendo conto, però, che in realtà non rispondere alla sua domanda. Per quanto riguarda "c'è un modo per farlo?" la risposta è "no - non in un modo universalmente supportato". Ho visto persone aggiungere le proprie annotazioni di documenti per dare suggerimenti, ma questo non sarà universalmente compreso dagli strumenti.

La tua scommessa migliore a lungo termine è di creare una storia di versione per il tuo schema (s) e mantenere la versione 2 separata dalla versione 1.

Problemi correlati