schema基本格式及xml引用xsd

来自w3c的例子:

note.xsd

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3school.com.cn"
xmlns="http://www.w3school.com.cn"
elementFormDefault="qualified">

<xs:element name="note">
    <xs:complexType>
      <xs:sequence>
	<xs:element name="to" type="xs:string"/>
	<xs:element name="from" type="xs:string"/>
	<xs:element name="heading" type="xs:string"/>
	<xs:element name="body" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
</xs:element>

</xs:schema>

note.xml

<?xml version="1.0"?>
<note
xmlns="http://www.w3school.com.cn"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3school.com.cn note.xsd">

<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don‘t forget the meeting!</body>
</note>

[如果xsd与xml文件在同一目录下]

其中xml文件第5行也可以写为:xsi:noNamespaceSchemaLocation="note.xsd"

也就是说根据路径引用。

xsd的需要注意的点:

1、最简单的xsd文件:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

</xs:schema>

最简单也就意味着这三行是必须要有的,至于理由,暂时还看不太懂

2、一个一般的xsd是这样写的:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
	targetNamespace="http://www.w3school.com.cn"
	xmlns="http://www.w3school.com.cn"
	elementFormDefault="qualified">

</xs:schema>

targetNamespace的作用:为这个xsd文件中定义的元素指定一个名称空间。一个xml文件[包括这个xsd文件本身]要引用这个xsd文件定义的元素时,需要指明引用的是哪个名称空间中的元素。

再下一行:    xmlns="http://www.w3school.com.cn"

是用来定义引用的名称空间前缀,可以看到和第一次出现的xmlns不同,也就是没有:xs,意为引用一个默认的命名空间,在一个xml文件中,只能有一上默认命名空间

再下一行:elementFormDefault

此行太复杂,斩时不管

xml中引用xsd

1、note中 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 是必须的

2、note中 xsi:schemaLocation="http://www.w3school.com.cn note.xsd" 即为指明要引用哪个命名空间中定义的元素

3、note  xmlns="http://www.w3school.com.cn" 就是为引用的命名空间加一个前缀,可以看到在这里是默认的命名空间

时间: 2024-10-13 02:32:17

schema基本格式及xml引用xsd的相关文章

XML,XSD,XSLT应用场景

XML:数据交换的标准  1.数据通信: 其实HTTP就是标准的报文格式,早开发中,设计报文的格式是可以看出这个系统的好坏  2.配置文件:设计一个良好的配置文件比写代码要难,比如Spring的配置文件,Mule的配置文件,Spring Batch/Intergation的配置文件都是设计优秀的配置文件,类似我们                            框架,写起来不是很容易,一个好的XML可以看出一个系统设计的好坏  例子:  异构系统之间交换,基本都是XML,当然JSON也是一

javaWeb项目中web.xml的xsd( XML Schemas Definition)文件

<?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://java.sun.com/xml/ns/javaee" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xml

xml和xsd架构文档相关知识

1.使用架构(XSD)验证XML文件 2.使用自动生成工具: 工具目录:C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools 工具名称:xsd.exe 使用帮助:生成xml架构文档xsd-->拷贝xml文件到工具目录下,打开命令工具,进入该目录,执行命令:xsd myFile.xml 生成xsd架构文档相关类-->执行命令:xsd /c/language:CS XSDSchemaFile.xsd 更多详细

Ajax中传输格式为XML

一: 1.优缺点 二:大纲 1.结构设计 三:程序 1.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <details> 3 <name>Andy Budd</name> 4 <website>http://andybudd.com/</website> 5 <email>[email protected]</email>

MyEclipse添加XML的xsd文件和dtd文件(自动补全xml节点代码)

因为自己遇到这个问题,并且也百度了,关于这个设置问题也有许多,但还是自己梳理一下,配图说明. 配置xsd 这个以配置spring-context-2.5.xsd为例说明: 先注册 .进入:Window   ->  Preferences  ->  MyEclipse  ->Files and Editors -> XML -> XML Catalog ,最终界面如下图: 选中“User Specified Entries” 点击右边的“Add” 点击“File System”

XML操作封装 - 实现预格式的XML的读写

XML用于作配置文件. 该封装XML需满足以下格式 <Configs> <Config  Name="XXX"> </Config  Name="XXX"> <Config  Name="YYY"> </Config  Name="YYY"> </Configs> 1 public class XMLOperation 2 { 3 public strin

JQuery实现AJAX异步请求实现省市联动(数据传输格式为xml)

AJAX的响应的数据格式: 文本,一段HTML的数据,XML,JSON. 使用工具生成xml的文件: 通常使用XStream工具,将集合,数组,对象转化成XML格式. 步骤一:导入XStream工具包:xpp3_min-1.1.4c.jar:xstream-1.4.4.jar; 步骤二:XStream的使用: List<City> list = ps.searchCityByPid(pid); XStream xStream = new XStream();//创建XStream对象 xStr

C# 用Serializer.ToXml()方法转换成两种格式的XML

常见XML格式两种: 这种是属性的格式,实体的Model属性上面加上这个特性 [XmlAttribute] <AAA aa="11" bb="22"/> 这种是标签的格式,实体的Model属性上面加上这个特性[XmlElement(ElementName = "显示的名字")] <AAA> <aa>11<aa/> <bb>22<bb/> <AAA/> 原来在VS中

XML引用外部实体触发XXE漏洞

先记录一道题 输入框中输入的内容会被显示到上面的区域中.查看后台源码,有这样的一个片段 function XHR() { var xhr; try {xhr = new XMLHttpRequest();} catch(e) { var IEXHRVers =["Msxml3.XMLHTTP","Msxml2.XMLHTTP","Microsoft.XMLHTTP"]; for (var i=0,len=IEXHRVers.length;i<