XML Şeması anyAttribute elementi

tanımlama ve kullanım

anyAttribute elementi, yaratıcıların schema tarafından tanımlanmamış özellikler aracılığıyla XML belgesini genişletmesini sağlar.

element bilgisi

proje açıklama
çıkış sıklığı sınırsız
önceki element complexType, restriction (simpleContent), extension (simpleContent), restriction (complexContent), extension (complexContent), attributeGroup
içerik annotation

gramer

<anyAttribute
id=ID
namespace=namespace
processContents=lax|skip|strict
herhangi bir özellik
>
(yorum?)
</anyAttribute>

(? İşareti, bu elementin anyAttribute elementi içinde sıfır veya bir kez ortaya çıkabileceğini belirtir.)

Özellikler

id

Opsiyonel. Bu elementin benzersiz ID'sini belirler.

namespace

Opsiyonel. Kullanılabilir elementlerin adlandırma alanını belirler. 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 ortaya çıkabilir (varsayılan).
  • ##other - Bu elementin ebeveyn elementinin hedef adlandırma alanı dışındaki herhangi bir adlandırma alanından gelen elementler ortaya çıkabilir.
  • ##local - Adlandırma alanına sahip olmayan elementler ortaya çıkabilir.
  • ##targetNamespace - Bu elementi içeren ebeveyn elementinin hedef adlandırma alanından gelen elementler ortaya çıkabilir.
  • {Adlandırma alanı URI referanslarının listesi, ##targetNamespace, ##local} - Boşluklarla ayrılmış adlandırma alanı listesinden gelen elementler ortaya çıkabilir. Bu liste aşağıdaki içerikleri içerebilir: Adlandırma alanı ##targetNamespace ve ##local'in URI referansları.

processContents

Opsiyonel. Bir belirteç, 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ğrulamalıdır. (Varsayılan)
  • lax - strict ile aynı; ancak, o yapıya ulaşamasa bile herhangi bir hata olmaz.
  • skip - XML işleyicisi, belirlenen adlandırma alanından gelen tüm elementleri doğrulamak zorunda değildir.

herhangi bir özellik

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

Örnek

Aşağıdaki örnek, "person" elementi için bir açıklamanın nasıl yapıldığını gösterir. <anyAttribute> elementi kullanılarak, yaratıcı "person" elementine istediği kadar özellik ekleyebilir:

<xs:element name="person">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
    </xs:sequence>
    <xs:anyAttribute/>
  </xs:complexType>
</xs:element>