xml文档的头部说明

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

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

XML 文档必须有根元素

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

使用默认命名空间

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

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

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

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

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

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

如: 

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

<table>
   <tr>
   <td>Apples</td>
   </tr>
</table>

<table>
   <name>African Coffee Table</name>
</table>

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

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


<h:table xmlns:h="http://www.w3.org/TR/html4/">
   <h:tr>
   <h:td>Apples</h:td>
   </h:tr>
</h:table>

<f:table xmlns:f="http://www.w3school.com.cn/furniture">
   <f:name>African Coffee Table</f:name>
</f:table>

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

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

《xml文档的头部说明》

  • 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 version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
</beans>

第一行:

<?xml version="1.0" encoding="UTF-8"?>

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文档的头部说明》

那我们再要引入多个

引用自 application_mvc.xml

《xml文档的头部说明》

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

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

《xml文档的头部说明》

个人总结

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约束文件路径   ">
</根标签>
    原文作者:Northern Crescent
    原文地址: https://blog.csdn.net/m0_52559040/article/details/122740143
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞