Elemen any XML Schema

Definisi dan penggunaan

Elemen any memungkinkan setiap elemen dari namespace yang ditentukan untuk muncul di dalam elemen sequence atau choice.

Elemen any memungkinkan penulis untuk memperluas dokumen XML melalui elemen yang tidak disebutkan dalam schema.

Informasi elemen

Proyek Keterangan
Kali muncul Tidak berbatasan
Elemen induk choice, sequence
Konten annotation

Sintaks

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
Properti apapun
>
(annotation?)
</any>

(Simbol ? menunjukkan elemen dapat muncul di dalam setiap elemen dengan nol atau sekali.)

Atribut

id

Boleh dipilih. Tetapkan ID unik untuk elemen ini.

maxOccurs

Boleh dipilih. Tetapkan batas maksimal penampilan elemen any dalam elemen induk. Nilai ini dapat berupa bilangan bulat yang lebih besar atau sama dengan nol. Jika ingin menentukan batas maksimal tanpa batasan apapun, gunakan string "unbounded". Nilai defaultnya adalah 1.

minOccurs

Pilihan. Tetapkan jumlah minimum kemunculan elemen any di dalam elemen родителя. Nilai ini dapat berupa bilangan integer yang lebih besar atau sama dengan nol. Untuk menentukan bahwa group any adalah pilihan, atur atribut ini ke nol. Nilai defaultnya adalah 1.

namespace

Pilihan. Tetapkan namespace yang dapat digunakan elemen. Jika namespace tidak dispecifikasikan, nilai defaultnya adalah ##any. Jika namespace dispecifikasikan, harus berupa salah satu nilai berikut:

  • ##any - semua elemen dari namespace apapun dapat muncul (default).
  • ##other - semua elemen dari namespace yang berbeda dari namespace tujuan yang terdapat di dalam elemen родителя dapat muncul.
  • ##local - elemen yang tidak disbatasi namespace dapat muncul.
  • ##targetNamespace - elemen dari namespace tujuan yang terdapat di dalam elemen родителя dapat muncul.
  • Daftar referensi URI namespace {##targetNamespace, ##local} - elemen dari daftar namespace yang dipisahkan spasi dapat muncul. Daftar ini dapat mengandung berikut:

processContents

Pilihan. Indikator yang menunjukkan bagaimana aplikasi atau penghandler XML harus memverifikasi validasi dokumen XML berdasarkan elemen yang ditentukan oleh elemen any. Jika properti processContents tidak dispecifikasikan, defaultnya adalah teguh. Jika processContents dispecifikasikan, harus berupa salah satu nilai berikut:

  • Teguh - Penghandler XML harus memperoleh arsitektur namespace yang diperlukan dan harus memverifikasi semua elemen dari namespace ini. (default)
  • Lewat - Sama seperti strict; namun, tidak ada kesalahan yang terjadi jika arsitektur tidak dapat diambil.
  • Lewat - Penghandler XML tidak mencoba memverifikasi semua elemen dari namespace yang ditentukan.

Properti apapun

Pilihan. Tetapkan semua properti lain dengan non-schema namespace.

Contoh

Contoh di bawah ini menunjukkan deklarasi elemen "person". Menggunakan elemen <any>, pencipta dapat memperluas konten "person" dengan elemen apapun (setelah <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>