## Specification Changes for 8303530: Redefine JAXP Configuration File

## The contents of the zip file

- java.xml module summary;

- jaxp.properties, the JAXP default configuration file to be installed at $JAVA_HOME/conf/jaxp.properties;

- API specification: package summaries and factory pages

- specdiff including XMLConstants and StAX factories. Note the specdiff tool didn't generate a module-summary diff.

## Specification Changes

The Specification Changes are mainly in the Configuration section of the module-summary, including:

1. introducing the concept of the user-defined JAXP configuration file, while previously the jaxp.properties file had been the sole configuration file.

2. adding jaxp.properties to the JDK instance as the default configuration file. Previously, it was described in the specification but not physically included in a JDK image. Introducing this configuration file does not change any of the settings since the values included are the same as the ones that are currently built into the different processors.

3. adding a system property `java.xml.config.file` for specifying a user-defined JAXP configuration file.

## Other Changes

- ### Clarification and Rewritten Text

  The introduction and other sections leading up to the Configuration File section are rewritten to clarify the current specification and terms used in the configuration process.

  The Configuration process, including the setting of JAXP properties via factory APIs, reading of jaxp.properties (default configuration file, if present), the use of system properties, and the Property Precedence (previously Scope and Order) already existed in JAXP in previous releases. They are now consolidated and reorganized in the Configuration section.

- ### Adjustments to reflect the change to Configuration File

  Adjustments are made to the implNote of the module summary and other classes included in the specdiff to reflect the spec change, in particular, replacing the usages of `jaxp.properties` with `JAXP Configuration File`.

  In XMLConstants, the Value sections of the External Access Properties are consolidated and moved to the Class description. The Property Precedence points to the Configuration section of the module summary.

  For the StAX factories, 'Use the configuration file "stax.properties"' was replaced with 'Use the value of the property factoryId set in the Configuration File, jaxp.properties by default.'

  The relevant methods are:

  - XMLEventFactory newFactory
  - XMLInputFactory newFactory
  - XMLOutputFactory newFactory

- ### References

  Package summaries and factory pages are for references only, to serve as proofs that the links in the module-summary are correct.