Element any XML Schema
Definicja i użycie
Elementy any pozwalają na wyświetlenie w sekwencji lub wyborze elementów z określonej przestrzeni nazw.
Ten element pozwala twórcom rozszerzać dokument XML za pomocą elementów niezdefiniowanych przez schema.
Informacje o elemencie
Element | Opis |
---|---|
Liczba wystąpień | Bez ograniczeń |
Rodzic elementu | choice、sequence |
Zawartość | annotation |
Gramatyka
<any id=ID maxOccurs=nonNegativeInteger|unbounded minOccurs=nonNegativeInteger namespace=namespace processContents=lax|skip|strict Dowolne atrybuty > (annotation?) </any>
(? Elementy deklaracji symbolu mogą występować w dowolnym elemencie zero lub jeden raz.)
Atrybut
id
Opcjonalne. Określa unikalny ID tego elementu.
maxOccurs
Opcjonalne. Określa maksymalną liczbę wystąpień elementu any w rodzicu. Wartością może być liczba całkowita większa lub równa zero. Jeśli nie chcemy ustawić żadnych ograniczeń dotyczących maksymalnej liczby wystąpień, użyj ciągu "unbounded". Domyślna wartość to 1.
minOccurs
Opcjonalne. Określa minimalną liczbę wystąpień elementu any w rodzicu. Wartością może być liczba całkowita większa lub równa zero. Aby oznaczyć, że grupa any jest opcjonalna, ustaw tę właściwość na zero. Domyślna wartość to 1.
namespace
Opcjonalne. Określa przestrzeń nazw zawierającą elementy, które mogą być używane. Jeśli nie określono przestrzeni nazw, wartością domyślną jest ##any. Jeśli określono przestrzeń nazw, musi to być jedna z poniższych wartości:
- ##any - Elementy z każdej przestrzeni nazw mogą się pojawiać (domyślnie).
- ##other - Elementy z każdej innej przestrzeni nazw, z wyjątkiem przestrzeni nazw, z której pochodzi rodzic tego elementu, mogą się pojawiać.
- ##local - Elementy bez określonej przestrzeni nazw mogą się pojawiać.
- ##targetNamespace - Elementy z przestrzeni nazw, z której pochodzi rodzic tego elementu, mogą się pojawiać.
- Lista odwołań URI przestrzeni nazw, ##targetNamespace, ##local - elementy z listy przestrzeni nazw oddzielonych spacjami mogą zawierać następujące zawartość: odwołania URI przestrzeni nazw ##targetNamespace i ##local.
processContents
Opcjonalne. Indykator, który wskazuje, jak aplikacja lub przetwornik XML powinien przetwarzać walidację dokumentu XML na podstawie elementów wskazanych przez element any. Jeśli nie określono atrybutu processContents, wartością domyślną jest strict. Jeśli określono processContents, musi to być jedna z poniższych wartości:
- Strict - Przetwornik XML musi uzyskać strukturę wymaganej przestrzeni nazw i musi weryfikować wszystkie elementy z tych przestrzeni (domyślnie).
- Lax - Jak strict; ale nie ma żadnych błędów, nawet jeśli nie można uzyskać struktury.
- Pomijanie - Przetwornik XML nie weryfikuje wszystkich elementów z określonej przestrzeni nazw.
Dowolne atrybuty
Opcjonalne. Określa inne atrybuty z non-schema命名空间。
Przykład
Poniższy przykład pokazuje deklarację elementu "person". Używając elementu <any>, twórca może rozszerzyć zawartość "person" o dowolny element (po <lastname>):
<xs:element name="person"> <xs:complexType> <xs:sequence> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type="xs:string"/> <xs:any minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element>