Uploaded image for project: 'Spring Framework'
  1. Spring Framework
  2. SPR-13499

Streamline XML namespace support towards unversioned schemas

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major
    • Resolution: Complete
    • Affects Version/s: None
    • Fix Version/s: 5.0 M1
    • Component/s: None
    • Labels:
      None
    • Last commented by a User:
      true

      Description

      Spring's XML namespace schemas, or more specifically their xsd files, are traditionally organized in versions, e.g. spring-context-4.2.xsd. While this was effective enough for the evolution of those schemas over a long period, we haven't seen many changes to the schemas lately and are therefore bound to create new versioned copies of the exact same xsd files in most cases.

      We'll keep doing this for 4.3 but should consider a different approach for 5.0: simply managing canonical spring-context.xsd etc files and always picking up the latest files even for version-specific declarations in XML bean definition documents. This is entirely backwards compatible for all 4.x schemas; there are just some outdated 3.x variants of attributes not exposed anymore which should be acceptable.

      In general, as of 5.0, let's drop support for all outdated pre-4.0 attributes in our XML schemas. We'll keep accepting older schema declarations but will parse them against the latest xsd files, with outdated attributes automatically failing schema validation on startup then. 99% of all XML bean dean definition documents will keep working without changes, and the rest should be easy to migrate to 4.x / 5.0 xsd variants.

        Attachments

          Activity

            People

            Assignee:
            juergen.hoeller Juergen Hoeller
            Reporter:
            juergen.hoeller Juergen Hoeller
            Last updater:
            Spring Issues Spring Issues
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Days since last comment:
              3 years, 30 weeks, 3 days ago