[Bug 5202] Part 2 Incompatibilities

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5202

           Summary: Part 2 Incompatibilities
           Product: XML Schema
           Version: 1.1 only
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Datatypes: XSD Part 2
        AssignedTo: cmsmcq@w3.org
        ReportedBy: mike@saxonica.com
         QAContact: www-xml-schema-comments@w3.org


This bugzilla entry is opened as a temporary place to capture a list of known
incompatibilities between Schema 1.0 and 1.1 (affecting Part 2), with a view to
eventual publication as a non-normative Appendix.

The aim here is only to describe cases where the behaviour in 1.0 was clear,
and has clearly changed. There are many additional cases where the 1.0
behaviour was unclear, in which case incompatibilities may arise in a specific
product depending on how it interpreted the 1.0 specification.

1. xs:duration values that were distinct in 1.0 are considered identical in 1.1
if they are different representations of the same period of time (for example
P1Y = P12M). This means, for example, that given a type derived from
xs:duration with an enumeration facet permitting the value "P1Y", the value
"P12M" was invalid in 1.0 but becomes valid in 1.1. This also affects fixed
values and identity constraints affecting xs:duration values.

2. The interpretation of dates with negative year numbers has changed. Year
zero was invalid under 1.0, but becomes valid in 1.1. The years in which
February 29 is a valid date were -0004, -0008 etc in 1.0, and are -0003, -0007,
etc in 1.1. This change causes some documents that were valid under 1.0 to
become invalid under 1.1, and vice versa.

3. XML Schema 1.1 allows (but does not require) processors to use the XML 1.1
definitions of NCName and related types, which allow use of some characters
that were not permitted in XML 1.0. An XML Schema 1.1 processor that takes this
option will label some names as valid that were invalid in 1.0. This change
also affects the meaning of the metacharacters \i and \c in regular
expressions. In rare circumstances the change to the meaning of \i and \c may
cause documents that were valid under 1.0 to become invalid under 1.1.

4. XML Schema 1.0 did not precisely spell out which sequences of characters
were valid as xs:anyURI values, but referred indirectly to the RFCs in which
URIs are defined. XML Schema 1.1 states that any sequence of characters is
valid as an xs:anyURI value. Thus some documents that were invalid in 1.0
become valid in 1.1.

5. XML Schema 1.0 specified that implementations must support 18 digits for
integer and decimal data types; this requirement has been relaxed to 16 digits
in 1.1. Schemas and instance documents that make use of more than 16 digits are
therefore no longer guaranteed to be interoperable across all processors.

6. A new type xs:anyAtomicType has been introduced as the base type for all
primitive atomic types. This does not affect the validity of any schema
documents or instance documents, but it may affect applications that make
programmatic access to schema components or to the PSVI.

7. In any case where the set of valid values of a data type has changed (see
other entries in this list), the use of that data type as a member of a union
may cause the type assigned to a particular lexical form to change to a
different member type of the union type.

Received on Tuesday, 16 October 2007 09:28:45 UTC