xml约束的概念
Posted cplinux
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了xml约束的概念相关的知识,希望对你有一定的参考价值。
1 xml 约束的概念
- XML 指可扩展标记语言(EXtensible Markup Language)
- XML 是一种标记语言,很类似 html
- XML 的设计宗旨是传输数据,而非显示数据
- XML 标签没有被预定义。您需要自行定义标签。
- XML 被设计为具有自我描述性质。
因为xml文件是可扩展的,且里面的标签可以自定义的,只要符合xml的最基本要求,那么就可以写一个xml文件。但是在实际应用中,我们需要针对某一个特定的应用,给xml中引入一下语法,这些语法用来检测特定应用的xml文件编写是否正确。例如mybatis中使用的DTD约束,spring中使用的shema约束。
xml约束就是在特定应用下,为xml编写的一下语法,用来检测这个应用下的xml文件是否正确。
2 xml约束常用的两种约束
(1) DTD约束
描述约束的文件是以.dtd为扩展名,在xml引入的方式如下
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
DOCTYPE后面的mapper就是整个xml的根标签
(2)shema约束
描述约束的文件以 .xsd为扩展名,在xml中引入shema的约束如下
<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 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> </beans>
在引入shema约束时,并没有再另外使用新的标签(DTD约束使用<!DOCTYPE>标签引入约束),而是在根标签中使用xmlns属性来引入约束,xmlns是xml namespace的简写。并通过 xsi:schemaLocation="" 把schema约束的位置进行指定,一般情况下会按照指定的位置到网络中下载约束文件,如果没有网络,需要自己指定本地约束文件。
以上是关于xml约束的概念的主要内容,如果未能解决你的问题,请参考以下文章
maven web项目的web.xml报错The markup in the document following the root element must be well-formed.(代码片段
在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途