complexType/@mixed must not conflict with complexContent/@mixed The two attributes if both present must be the same complexType/@mixed must not conflict with complexContent/@mixed The two attributes if both present must be the same xsi:type default Default value for xsi:type is allowed but ignored Supply default value for xsi:type that would be invalid if it were validated Note: no import of xsi namespace required, see 3.17.6.2 QName resolution (Schema Document) clause 4.2.4 Valid instance that ignores the xsi:type Invalid instance, satisfies the xsi:type but this should be ignored xsi:type default Default value for xsi:type is allowed but ignored Supply default value for xsi:type that would be invalid if it were validated Note: import of xsi namespace is permitted, see 3.17.6.2 QName resolution (Schema Document) clause 4.2.4 Valid instance that ignores the xsi:type Invalid instance, satisfies the xsi:type but this should be ignored Valid instance, the default value of xsi:type is not valid in the context where it is used (undeclared namespace prefix "xs"), but this does not matter because the default value has no effect. See bug 13457. xsi:type fixed Fixed value for xsi:type is allowed but ignored, except that the instance must match Supply fixed value for xsi:type Note: import of xsi namespace is permitted, see 3.17.6.2 QName resolution (Schema Document) clause 4.2.4 Valid instance; xsi:type fixed in schema, absent in instance, has no effect Invalid instance, xsi:type must conform to the fixed value if present Invalid instance, xsi:type does conform to the fixed value but supplied value is invalid Invalid instance; xsi:type matches the fixed value and instance value satisfies the type, but xsi:type is not validly derived from the declared type (the declared type is complex, but the xsi:type is a simple type) xsi:nil default Default value for xsi:nil is allowed but ignored Supply default value for xsi:nil Note: import of xsi namespace is permitted, see 3.17.6.2 QName resolution (Schema Document) clause 4.2.4 Valid instance; xsi:nil is ignored Valid instance; xsi:nil is ignored Invalid instance, xsi:nil in the instance is effective Invalid instance, xsi:nil in the instance is effective Invalid instance, xsi:nil in the instance does not default to the value in the schema xsi:nil fixed Fixed value for xsi:nil is allowed but ignored, except if present in the instance it must match and be obeyed Supply fixed value for xsi:nil Note: import of xsi namespace is permitted, see 3.17.6.2 QName resolution (Schema Document) clause 4.2.4 Valid instance; xsi:nil is ignored Valid instance; xsi:nil is ignored Invalid instance, xsi:nil in the instance is effective Invalid instance, xsi:nil in the instance is effective Invalid instance, xsi:nil in the instance does not default to the value in the schema xsi:type doesn't resolve xsi:type must resolve to a known type Valid schema, no particular features Invalid instance, unknown type in XSD namespace Invalid instance, invalid QName (undeclared prefix) Invalid instance, xsi:type is an unknown QName Invalid instance, xsi:type is not lexically a QName xsi:type use="required Specifying use="required" for xsi:type is allowed and effective Make xsi:type mandatory Valid instance; xsi:type is present Valid instance; xsi:type is present Invalid instance, xsi:type is omitted Invalid instance, xsi:type is present but instance doesn't conform to it xsi:noNamespaceSchemaLocation use="required Specifying use="required" for xsi:noNamespaceSchemaLocation is allowed and effective Make xsi:noNamespaceSchemaLocation mandatory Valid instance; xsi:noNamespaceSchemaLocation is present Invalid instance, xsi:noNamespaceSchemaLocation is omitted xsi:nil on complex type with simple content (not specific to 1.1) All combinations of xsi:nil with value present or absent Specifies element as nillable Valid instance; not nil Valid instance; nil Invalid instance, value missing but not nil Invalid instance,value present but nil Invalid instance, child present but nil xsi:nil on complex type with mixede content (not specific to 1.1) All combinations of xsi:nil with value present or absent Specifies element as nillable with mixed content Valid instance; not nil Valid instance; nil Valid instance; nil Valid instance; nil Valid instance; nil element can contain a comment Valid instance; nil element can contain a PI Invalid instance, value missing but not nil Invalid instance,value present but nil Invalid instance, child present but nil xsi:nil on complex type with element-only content (not specific to 1.1) All combinations of xsi:nil with value present or absent Specifies element as nillable, element-only content, not emptiable Valid instance; not nil Valid instance; nil Invalid instance, value missing but not nil Invalid instance,value present but nil xsi:nil on complex type with element-only content, xs:all compositor (not specific to 1.1) All combinations of xsi:nil with value present or absent Specifies element as nillable, element-only content, not emptiable Valid instance; not nil Valid instance; nil Invalid instance, value missing but not nil Invalid instance,value present but nil xsi:type on complex type must resolve Instance is invalid if xsi:type not present in schema Unremarkable schema Invalid instance, xsi:type doesn't resolve Test uniqueness constraint on a field having a complex type with simple content See comment in the schema document, and bug 10236. In the XSD 1.0 spec, see clause 3 of "Identity Constraint Satisfied" in 3.11.4 Identity-constraint Definition Validation Rules. Valid (despite the 1.0 spec): the field has a complex type with simple content. Invalid: two fields with the same value. Test uniqueness constraint on a field having a complex type with mixed content In both XSD 1.0 and 1.1 the schema is valid, but all instances are invalid. Invalid: the field has a complex type with mixed content. For the purposes of uniqueness constraints, NaN is effectively equal to NaN For the purposes of uniqueness constraints, NaN is effectively equal to NaN. (Uniqueness is violated if the values are "identical or equal"). See bug 9196. Value: values are distinct. Value: values are distinct. Invalid: values are duplicates. Invalid: values NaN and NaN are considered duplicates.