XML Şeması any elementi

Tanım ve kullanım

any elementi, belirtilen ad alanından gelen herhangi bir elementin sequence veya choice elementleri içinde görüntülenmesine olanak tanır.

Bu element, yaratıcıların schema tarafından tanımlanmamış elementler kullanarak XML belgesini genişletmesini sağlar.

Element bilgisi

Proje Açıklama
Görünüm sıklığı Sınırsız
Ana element choice、sequence
İçerik annotation

Dilbilgisi

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
herhangi bir özellik
>
(annotation?)
</any>

(? İşaret açıklama elementi herhangi bir element içinde sıfır veya bir kez出现出现。)

Özellik

id

Opsiyonel. Bu elementin benzersiz bir ID'sini tanımlar.

maxOccurs

Opsiyonel. Any elementinin ebeveyn elementinde görünmesini gerektiren en büyük sayıyı tanımlar. Bu değer, sıfır veya daha büyük bir tam sayı olabilir. En büyük sayı sınırlaması istenmezse, "unbounded" kullanılmalıdır. Varsayılan değeri 1'dir.

minOccurs

Opsiyonel. Any elementinin ebeveyn elementinde görünmesini gerektiren en küçük sayıyı tanımlar. Bu değer, sıfır veya daha büyük bir tam sayı olabilir. Bu any grubunun seçmeli olduğunu belirtmek için bu özelliği sıfıra ayarlayın. Varsayılan değeri 1'dir.

namespace

Opsiyonel. Kullanılabilir elementlerin adlandırma alanını tanımlar. Adlandırma alanı belirtilmemişse, varsayılan olarak ##any olur. Adlandırma alanı belirtilmişse, aşağıdaki değerlerden biri olmalıdır:

  • ##any - Herhangi bir adlandırma alanından gelen elementler görünebilir (varsayılan).
  • ##other - Bu elementin ebeveyn elementinin hedef adlandırma alanı dışındaki herhangi bir adlandırma alanından gelen elementler görünebilir.
  • ##local - Adlandırma alanı tanımlanmamış elementler görünebilir.
  • ##targetNamespace - Bu elementi içeren ebeveyn elementinin hedef adlandırma alanından gelen elementler görünebilir.
  • {Adlandırma alanı URI referanslarının listesi, ##targetNamespace, ##local} - Boşlukla ayrılmış adlandırma alanı listesinden gelen elementler görünebilir. Bu liste aşağıdaki içerikleri içerebilir: Adlandırma alanı ##targetNamespace ve ##local'in URI referansları.

processContents

Opsiyonel. Bir işaretçi, uygulama veya XML işleyicisinin, bu any elementi tarafından belirlenen elementlere göre XML belgesinin doğrulamasını nasıl yapacağını gösterir. processContents özelliği belirtilmemişse, varsayılan olarak strict olur. processContents belirtilmişse, aşağıdaki değerlerden biri olmalıdır:

  • strict - XML işleyicisi, gerekli adlandırma alanının yapısını almak zorunda olmalıdır ve bu alanlardan gelen tüm elementleri doğrulamak zorundadır. (varsayılan)
  • lax - strict ile aynı; ancak, bu yapıya erişilemezse herhangi bir hata olmaz.
  • skip - XML işleyici, belirlenen adlandırma alanından gelen tüm elementleri doğrulamaya çalışmaz.

herhangi bir özellik

Opsiyonel. non-schema adlandırma alanına sahip herhangi bir diğer özelliği tanımlar.

örnek

Aşağıdaki örnek, "person" elementinin bir bildirimini gösterir. <any> elementini kullanarak, yaratıcılar "person" içeriğini herhangi bir elementle genişletebilir ( <lastname> sonrası):

<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>