(C) 1999 Lexica, LLC
Using Attribute Set Refinement, one can add new attributes to existing element definitions. Here's an example of a document that refines the iLingo driver element by adding a new corrective.lenses attribute (the new element is called driver):
<auto.line.of.business xmlns="urn:x-lexica:ilingo:auto.line.of.business:en" ...>
...
<drivers>
<x:driver xmlns:x="urn:x-lexica:ilingo:carrier-extension:carrierx:en"
object.id="object:foo:1234"
corrective.lenses="required" ...>
...
</x:driver>
</drivers>
...
</auto.line.of.business>
Here's a snippet of the schema that refines the iLingo driver element's attribute set:
<schema xmlns="http://www.w3.org/1999/XMLSchema" ...>
...
<import schemaName="urn:x-lexica:ilingo:auto.line.of.business:en"
schemaAbbrev="alob"/>
...
<element name="driver">
<archetype>
<refines name="driver" schemaAbbrev="alob"/>
<attribute name="corrective.lenses" type="string">
<enumeration>
<literal>required</literal>
<literal>not-required</literal>
</enumeration>
</attribute>
</archetype>
<element>
...
</schema>
More examples of Attribute Set Refinement can be found in the [XML Schema Refinement Task Force Report] as well as the [XML Schemas] specification.