-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Description
Elliotte Rusty Harold opened MNG-8537 and commented
Just noticed that Maven 4 has a new namespace URL. The old namespace was
http://maven.apache.org/POM/4.0.0
The new one is
http://maven.apache.org/POM/4.1.0
Putting version numbers in namespaces is a known XML antipattern because it makes it extremely difficult and inconvenient to write tools that process both, even when they are much the same. XSLT, DOM, XQuery, JDOM, etc. — really any XML aware tool — is going to have problems with this.
Model version 4.1.0 is not a new and different schema that completely breaks with the past. Most old elements from 4.0.0 are still present and still mean exactly the same thing: groupId, artifactId, name, dependency, and most others. There are new elements but that doesn't imply a new namespace. Adding a new namespace is asserting that all the elements are different.
IMHO Maven 4 should not change the namespace URL.
Issue Links:
- MNG-8639 Check namespaces when reading XML models