qual é o uso do xsi: schemaLocation?

Vejo que temos vários URLs como valor desse atributo, como na primavera:

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd">

Por que é necessário e para que é usado? O Spring vai para o URL e valida? qual é a diferença entre xmlns e xsi: schemaLocation?

questionAnswers(4)

yourAnswerToTheQuestion