عنصر redefine XML Schema

تعریف و استفاده

عنصر redefine اجازه می‌دهد تا از نوع‌های ساده و پیچیده، گروه‌ها و گروه‌های ویژگی از فایل‌های معماری خارجی در Schema فعلی دوباره تعریف شوند.

اطلاعات عنصر

تعداد ظهور بی‌نهایت
عنصر والد schema
محتوای annotation،attributeGroup،complexType،group،simpleType

زبان

<redefine
id=ID
schemaLocation=anyURI
ویژگی‌های هر
>
(annotation|(simpleType|complexType|group|attributeGroup))*
</redefine>
ویژگی‌ها توضیح
id اختیاری. یک شناسه منحصر به فرد برای این عنصر مشخص می‌کند.
schemaLocation ضروری. ارجاع URI به مکان مستند schema.
ویژگی‌های هر اختیاری. هر ویژگی دیگر با نام فضای نام non-schema را مشخص می‌کند.

مثال

مثال 1

مثال دیگری نشان می‌دهد که یک شماتیک، Myschama2.xsd، وجود دارد که شامل عناصر تعریف شده در Myschama1.xsd است. نوع pname دوباره تعریف شده است. بر اساس این شماتیک، عناصر محدود به "country" باید با عنصر "country" پایان یابند:

Myschema1.xsd:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="pname">
  <xs:sequence>
    <xs:element name="firstname"/>
    <xs:element name="lastname"/>
  </xs:sequence>
</xs:complexType>
<xs:element name="customer" type="pname"/>
</xs:schema>

Myschema2.xsd:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:redefine schemaLocation="Myschema1.xsd">
  <xs:complexType name="pname">
    <xs:complexContent>
      <xs:extension base="pname">
        <xs:sequence>
          <xs:element name="country"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
</xs:redefine>
<xs:element name="author" type="pname"/>
</xs:schema>