xmlns 与 targetNamespace 的解释
test.xsd文件: <?xml version="1.0" encoding="UTF-8"?>
<xs:schema elementFormDefault="qualified"
targetNamespace="http://xxx/myxml"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://xxx/myxml">
<xs:element name="my-document">
<xs:complexType>
<xs:choice>
<xs:element name="my-mn"/>
<xs:element name="my-case"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="my-mn"/>
<xs:element name="my-case">
<xs:complexType>
<xs:choice>
<xs:element ref="my-mn"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema> test.xml文件: <?xml version="1.0" encoding="UTF-8"?>
<my-document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xxx/myxml"
xsi:schemaLocation="http://xxx/myxml test.xsd">
<my-case>
<my-mn>
</my-mn>
</my-case>
</my-document> targetNamespace 是一个被xml文件某些元素的xmlns或xmlns:xxx属性引用的目标命名空间值,其值通常以URI形式存在.
它也可以被自身xsd文件schema元素的xmlns属性引用.(红色字体部分) xmlns或xmlns:xxx决定了某元素的归属问题,也包括 ref 所指向的值, 如:<xs:element ref="my-mn"/>中的 my-mn. 这里的问题就是: xsd文件中红色字体部分: xmlns="http://xxx/myxml" 是否一定要出现? 答案是:不一定. 在这个xsd中,它是一定要出现的, 否则 <xs:element ref="my-mn"/> 中的 my-mn 找不到命名空间, 如果把它改成 <xs:element name="my-mn"/> ,则可以不出现. 在xml文件中,如果使用的 xsd 定义的元素(无前缀),则 xmlns="http://xxx/myxml" 必须出现在xml文件中,且跟targetNamespace 的值保持一致. 而 xsi:schemaLocation 则是该 xsd文件的真实地址(每两个值为一对,取自第二个值), 否则无法通过 schema 验证.
xmlns 与 targetNamespace 的解释的更多相关文章
- xmlns与targetNamespace
xmlns与targetNamespace xmlns与targetNamespacehttp://blog.sina.com.cn/weatry在使用XML Schema生成XML文件时,我们常常会 ...
- xmlns, xmlns:xsi, xsi:schemaLocation 解释
xmlns, xmlns:xsi, xsi:schemaLocation 解释 xmlnsxsischemaLocation 我们在写 xml 文件时,尤其是 spring .mybatis 的配置文 ...
- 最近学习工作流 推荐一个activiti 的教程文档
全文地址:http://www.mossle.com/docs/activiti/ Activiti 5.15 用户手册 Table of Contents 1. 简介 协议 下载 源码 必要的软件 ...
- Java调用WebService方法总结(2)--JAX-WS调用WebService
用JAX-WS(Java API for XML Web Services)调用WebService不需要引入其他框架,都是JDK自带的:文中所使用到的软件版本:Java 1.8.0_191.Dom4 ...
- cxf构建webservice的两种方式
一.简介 对于基于soap传输协议的webservice有两种开发模式,代码优先和契约优先的模式.代码优先的模式是通过编写服务器端的代码,使用代码生成wsdl:契约优先模式首先编写wsdl,再通过ws ...
- Java_Activiti5_菜鸟也来学Activiti5工作流_之初识BPMN2.0的简单结构(五)
<?xml version="1.0" encoding="UTF-8"?> <definitions xmlns="http:// ...
- Activiti工作流学习-----基于5.19.0版本(6)
七. BPMN的简介 读者了解到这里,应付一般的工作流开发已经足够了.此处应该有华丽的分割线,在工作流项目中核心开发人员主要是对工作流业务设计以及实现,而初级开发人员是对业务功能的代码实现.以后将主要 ...
- Activiti-05-.Deployment and MN 2.0 Introduction
Business archives (业务归档) 为了部署流程,业务档案必须被封装,业务档案是activiti 引擎部署的单元,它相当于zip文件,它包含BPMN 2.0 processes, tas ...
- Activiti 实战篇 小试牛刀
原文地址:http://blog.csdn.net/qq_30739519/article/details/51166062 1:工作流的概念 说明: 1) 假设:这两张图就是华谊兄弟的请假流程图 ...
随机推荐
- UNITY 内存问题资料收集
1,https://blog.csdn.net/wetest_tencent/article/details/52130703 2,http://blog.51cto.com/13638120/208 ...
- UGUI 自动布局的重叠BUG
1,父级使用了verticalLayout(注意没有ContentSizeFilter),子级使用了ContentSizeFilter时,点击Apply常常发现,本来布局好的UI突然重叠到了一起,或位 ...
- Java 单例模式详解(转)
概念: java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例.饿汉式单例.登记式单例三种. 单例模式有一下特点: 1.单例类只能有一个实例. 2.单例类必须自己自己创建自己的唯一实例. ...
- 后端生成二维码 - C#生成二维码(QR)
最近在github上找到一个相对比较好的C#二维码生成类库.在这里和大家分享一下. github地址:https://github.com/codebude/QRCoder 把解决方案下载下来,编译生 ...
- jxl导出excel的问题
jxl导出excel,通常浏览器会提示excel导出完成情况及默认保存路径,或让用户自定义选择保存路径,要达到这种效果,有些要做下修改,如:response是jsp的内置对象,在jsp中使用时不用声明 ...
- Git Hook 同步服务器代码
参考并转载自: http://www.embbnux.com/2014/09/05/git_server_let_code_auto_deploy/ http://www.chenyudong.com ...
- MySQL数据库篇之pymysql模块的使用
主要内容: 一.pymysql模块的使用 二.pymysq模块增删改查 1️⃣ pymsql模块的使用 1.前言:之前我们都是通过MySQL自带的命令行客户端工具mysql来操作数据库, 那如何在p ...
- 怎样用jQuery拿到select中被选中的option的值
1.首先要保证select中每一个option标签都有value属性: 2.jquery的写法 1 $('#sele').val()//这里假设select的id是sele,这样可以获取当前选中的op ...
- RPM简介与基本使用
一.什么是RPM RPM的全名是Red Hat Package Manager,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:在Fedora .Redhat.Man ...
- Python binascii
Python binascii模块 Python binascii模块 用处 包含的函数 相关内置函数 code使用示例 转载请标明出处(http://blog.csdn.net/lis_12/art ...