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

Guillaume Nodet commented on MNG-8537:
--------------------------------------

The decision to put the version number in the namespace was made 20 years ago.

I think the real problem was that Maven never properly versioned the schema 
when changing it.
I agree that if we do minor changes to the schema, we should not change the 
namespace, but version it properly.  This has never been done and we definitely 
should.

We may be able to decouple the version of the schema from the model version.  
Maven itself doesn't care much about the namespace.  Even when reading, there's 
no versioning / namespace checks at all.  

Good first step was done a few months ago when we switched to a conformant XML 
parser !

Anyway, this is neither a bug, nor blocking.




> 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