什么是xmlns:XSD中的mstns?

前端之家收集整理的这篇文章主要介绍了什么是xmlns:XSD中的mstns?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
xml:mstns在以下xsd-header中表达什么?
<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="config"
    targetNamespace="http:/tempuri.org/config.xsd"
    elementFormDefault="qualified"
    xmlns=""
    xmlns:mstns="http://tempuri.org/config.xsd"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
  <xs:element name="config">
...
这是一个XML命名空间声明.

XML命名空间真的由URI定义,因此限定名称由命名空间(任意URI)和本地名称(NCName规则之后的简单字符串)组成.但是,每次都不能完全写出这些命名空间,所以命名空间通过命名空间声明映射到前缀,它始终采用以xmlns开头的属性的形式,并为包含该元素的所有元素定义该前缀.元素.

以我们的案例为例.

我们有一个属性xmlns:mstns =“http://tempuri.org/config.xsd”,只是说前缀mstns被映射到命名空间URI http://tempuri.org/config.xsd;这意味着所有名称以mstns开头的元素和属性(注意冒号)都在该命名空间中.在你的例子中,我们也看到xmlns =“”,它将没有前缀的所有元素(棘手点:不是属性!)映射到空的URI.

显然,你不能使用xmlns本身作为前缀(它是神奇的),实际上所有以xml开始的前缀都是保留的.在模式中使用tns前缀来表示目标名称空间是一个常见的习惯.

猜你在找的XML相关文章