Esquema XML de configuração do Spring: com ou sem versão?

Eu sou novo na primavera. Uma coisa me confunde é que, às vezes, vejo arquivos de configuração XML com esquemas com versão, mas às vezes com arquivos sem versão. Por exemplo, às vezes vejo algo como

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-4.0.xsd">

    <context:annotation-config/>

    <context:component-scan base-package="base.package"/>

</beans>

E às vezes assim:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd">

    <context:annotation-config/>

    <context:component-scan base-package="base.package"/>

</beans>

Observe que ospring-beans espring-context esquemas são diferentes nos dois exemplos.

Então, minha pergunta é: qual estilo você usaria e por quê? Em particular, o esquema com versão ficará indisponível no futuro e o esquema sem versão continuará compatível com um aplicativo atual quando o Spring atualizar o esquema?

Uma questão secundária é: onde posso encontrar uma lista dos esquemas de primavera com versão?

Muito Obrigado!

questionAnswers(6)

yourAnswerToTheQuestion