[ 
https://issues.apache.org/jira/browse/MNG-8537?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17916386#comment-17916386
 ] 

Elliotte Rusty Harold commented on MNG-8537:
--------------------------------------------

It's blocking because this change needs to be made before release, if ever. 
That is, keep the namespace URI [http://maven.apache.org/POM/4.0.0] for the 
foreseeable future.

This might not be an issue for Maven's own code that ignores namespaces, but 
it's a big honking deal for anyone who wants to use XML tools to process pom 
files. Bad namespace hygiene in pom.xml files made for a lot of extra work when 
I was scanning Maven central for linkage checking, for instance. It effectively 
prevented the use of XPath and XSLT.

If Maven 4 still isn't checking for the right namespace when processing, then 
that's something else that needs to be fixed before release.

And now that I think about it, this might be a huge issue for XInclude if it's 
trying to include pom 4 content into pom 4.1. I need to take a look at that.

 

> Maven 4 namespace should not change
> -----------------------------------
>
>                 Key: MNG-8537
>                 URL: https://issues.apache.org/jira/browse/MNG-8537
>             Project: Maven
>          Issue Type: Bug
>            Reporter: Elliotte Rusty Harold
>            Priority: Blocker
>
> 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.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to