2009-12-23 7 views
20

Ich habe eine XSD, die einen Übergang von einer Gruppe von Elementen zu einer anderen durchläuft. Während des Übergangs wird Code erwartet, dass die neuen Elemente und der Code die alten Elemente erwarten. Daher muss ich die alten Elemente im XSD behalten; Ich dokumentiere sie als veraltet (mit freiem Text in einem xs: -Dokumentationselement).Element als veraltet in XSD markieren

Gibt es eine Möglichkeit, ein Element als veraltet zu markieren, sodass ein Tool wie xmllint automatisch warnt, wenn jemand ein veraltetes Element verwendet?

Antwort

18

Erstellen Sie ein neues Schema mit einem neuen Namespace. Nennen Sie diese "Version 2". Wenn Sie sich dafür entscheiden, Version 1 XSD und Version 2 XSD in Ihrer Anwendung zu unterstützen, ist das in Ordnung, aber halten Sie sie separat und versuchen Sie nicht, die beiden übereinander zu schichten - besonders wenn Sie versuchen, Leute davon abzuhalten, die Version 1.

Dies ist einen Blick wert, wie es einige von dem, was beschreibt man es zu tun mit: archive of http://www.pluralsight.com/community/blogs/tewald/archive/2006/04/19/22111.aspx

ich jedoch erkennen, die nicht wirklich Ihre Frage nicht befassen. In Bezug auf "gibt es einen Weg, dies zu tun?" die Antwort lautet "nein - nicht universal unterstützt". Ich habe Leute gesehen, die ihre eigenen Dokumentationsanmerkungen hinzufügen, um Hinweise zu geben, aber das wird von Werkzeugen nicht allgemein verstanden.

Ihre beste Wette auf lange Sicht ist, erstellen Sie eine Versionsstory für Ihre Schema (s) und behalten Version 2 getrennt von Version 1.

Verwandte Themen