xs:maxInclusive — Facet to define a maximum (inclusive) value.


           fixed          = xs:boolean : “false”
           id             = xs:ID
           value          = anySimpleType
           {any attributes with non-schema namespace}
           Content: (xs:annotation?)

May be included in: xs:restriction (simple type), xs:restriction (simple content)

May be used as facet for: xs:byte, xs:date, xs:dateTime, xs:decimal, xs:double, xs:duration, xs:float, xs:gDay, xs:gMonth, xs:gMonthDay, xs:gYear, xs:gYearMonth, xs:int, xs:integer, xs:long, xs:negativeInteger, xs:nonNegativeInteger, xs:nonPositiveInteger, xs:positiveInteger, xs:short, xs:time, xs:unsignedByte, xs:unsignedInt, xs:unsignedLong, xs:unsignedShort


xs:maxInclusive defines an inclusive maximum value. To be valid, a value must be less than or equal to the value of xs:maxInclusive.

This facet constrains the value space.


It is forbidden to define both xs:maxExclusive and xs:maxInclusive in the same restriction step. Although not explicitly specified in the Recommendation, it doesn’t make sense to define several xs:maxInclusive facets in a single restriction step either.

Within a restriction step, xs:maxInclusive is also dependent on xs:minExclusive and xs:minInclusive, since using inconsistent values leads to datatypes with empty value spaces.

xs:maxInclusive must restrict the value space of its base type, and its value must be in the value space of the base type.

Fixing the maxInclusive facet doesn’t fix the xs:maxExclusive ...

Get XML Schema now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.