Design Considerations: Refactoring POM Loading and Building for Maven 2.1
Accommodating
...
New POM
...
Elements
Namespacing might be able to help here, since it could allow us to implement chain-of-command for XML parsing itself. Also, it could help us to provide better support to users for XML editing.
Replacing XPP3 for Parsing
XPP3 is a dead project, and the parser has some deficiencies (need details here).
POM Encoding Support
This is partially dependent on XPP3 replacement, but we need to support document encodings for POMs and other parsed models. This will most likely involve fixing Modello and/or providing other XML parser implementations, and making them encoding-aware.
Switching to Chain-of-Command for Project Loading
This will allow us to implement a more flexible approach to POM loading, and support customization of this process.
Accommodating
...
ModelVersions above 4.0.0
Need to be able to load multiple versions of the POM from the same runtime.
Refactoring Interpolation
Avoid chicken-and-egg problems with interpolation. Provide better handling for path-alignment.
Refactoring Inheritance and Profile-injection
Need more information about what is needed here.