Во-первых, я бы не использовал объявления глобальных атрибутов, потому что они вызывают проблемы при добавлении пространств имен к Схеме.
Если вы хотите, чтобы объявить сложный тип элемента «вар» глобально (так как он используется в нескольких местах), то вы можете ограничить тип локально и установите атрибут «уровень» на фиксированное значение. Обратите внимание, что атрибуты наследуются ограничения типа, так что вам нужно только список атрибутов, которые вы хотите ограничить:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="LevelType">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-3]"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VarType">
<xs:attribute name="level" type="LevelType" use="required"/>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
<xs:element name="pair">
<xs:complexType>
<xs:sequence>
<xs:element name="var" minOccurs="2" maxOccurs="2">
<xs:complexType>
<xs:complexContent>
<xs:restriction base="VarType">
<xs:attribute name="level" type="LevelType" use="required" fixed="0"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
В качестве более простой альтернативы, вы можете просто объявить атрибуты локально, где это необходимо, например, так:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="LevelType">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-3]"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="pair">
<xs:complexType>
<xs:sequence>
<xs:element name="var" minOccurs="2" maxOccurs="2">
<xs:complexType>
<xs:attribute name="level" type="LevelType" use="required" fixed="0"/>
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Возможно, будет яснее, если вы покажете нам XML, который вы хотите описать в своей схеме. Ваши фрагменты схемы не имеют смысла, и ваше описание того, что вы пытаетесь достичь, очень запутанно. –