xml文档的头部说明

近来学习xml文档, 对于头部的用法不是特别理解

整理一下思路, 如果有错误欢迎指出

XML 文档必须有根元素

XML 文档必须有一个元素是所有其他元素的父元素。该元素称为根元素

使用默认命名空间

  • 为什么要使用命名空间?

        避免因为相同标签名 而产生冲突 

  • 为什么要用默认命名空间? 

        该元素内部的子元素都会默认属于该命名空间下, 不需要再为它们添加命名空间。

  • 命名空间为什么使用URL?

        因为短的变量名比如 a b c 重复可能性极高, 而URL长度长, 且唯一

如: 

(例子来自 XML 命名空间(XML Namespaces) (w3school.com.cn)(w3school.com.cn)

Apples
African Coffee Table

 你想调用table标签  xml解析器无法帮你解析

加上个标识符 这样就很明确谁是谁了



   
   Apples
   



   African Coffee Table

类似于 你是东村的张三 你是西村的张三 都是张三

虽然名字相同, 但我知道怎么辨别你们

xml文档的头部说明_第1张图片

  • xmlns : = "http://www.w3.org/TR/html4/"   为啥有后面那串唯一标识符 了, 还要用 

        类似于Java的String h="http://www.w3.org/TR/html4/" ,

        h是变量, "http://www.w3.org/TR/html4/" 指代具体的字符串

        我们不至于每次都拿着后面那串长长的去用, 所以用短的h代表它, 方便


 以spring的默认xml文件逐行分析




第一行:

XML的声明   XML声明是XML文档的第一句


第二行:

xmlns="http://www.springframework.org/schema/beans"

是默认命名空间


第三行: 

xmlns:xsi  也是一个命名空间, 在不同的 xml 文档中都会出现.

业界用于 给XSD文件(用来定义 xml 文档结构的特殊xml文档)的命名空间

即: xsd文件有很多种类型

xmlns:xsi指出当前的xml是哪一种xsd的实现(记住这句话即可)


XSD 文件(也常常称为 Schema 文件)也是XML文档(特殊的), 是用来定义 xml 文档结构的。

XSD有许多种, xsi给出标准具体的实现, 比如说

www.w3.org/2001 ...

www.w3.org/2003 ...(具体可在idea补全查看)

(也就是所谓的:  XSD文件的命名空间)


最后:

xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd"

上面这行的意思是, xsi:schemaLocation = "某命名空间 文件路径"

前一个值 指代  命名空间 ...org/schema/beans

后一个值指代 约束文件路径 ...spring-beans.xsd

作用就是引入 约束文件

             xmlns="http://www.springframework.org/schema/beans" 
xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans.xsd"

xsi:schemaLocation 就是指明 默认的约束命名空间约束文件地址

正常用大概就是这么个过程(线是我画的)

引用自黑马程序员

xml文档的头部说明_第2张图片

那我们再要引入多个

引用自 application_mvc.xml

xml文档的头部说明_第3张图片

 引入了不同的文件, 有了不同的命名空间

即使有同名的标签, 我们也可以区分了

xml文档的头部说明_第4张图片

个人总结

xml开头格式:

<根标签   xmlns="github.com/mobeiCanyue"
        xmlns:a="github.com/mobeiCanyue/a"
        xmlns:b="github.com/mobeiCanyue/b"
        xmlns:xsi="XSD文档的格式"
        xsi:schemaLocation=
                           " github.com/mobeiCanyue    默认约束文件路径
                             github.com/mobeiCanyue/a  a约束文件路径
                             github.com/mobeiCanyue/b  b约束文件路径   ">

你可能感兴趣的:(XML,xml,java,intellij-idea)