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">
...
Run Code Online (Sandbox Code Playgroud)
Don*_*ows 11
那是一个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在模式中使用前缀来表示Target NameSpace 有一个共同的习惯.
| 归档时间: |
|
| 查看次数: |
6360 次 |
| 最近记录: |