怎么写xsd文件

怎么写xsd文件1.最简单的Schema文档如何写一个最简单的XML Schema文档呢?首先,我们写出一个最简单的XML文档。hello.xml——————-version=”1.0″?> Hello World!!hello.xsd----------version=”1.0″?> xmlns:xsd=”http://www.w3.org/2

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

w3shool也有点击打开链接

1.最简单的Schema文档

如何写一个最简单的XML 
Schema文档呢?
首先,我们写出一个最简单的XML文档。
hello.xml
——————-
<?xml 
version=”1.0″?> 
<greeting>Hello 
World!!</greeting>
<!–一个根元素:greeting;且这个元素不含属性,无子元素,内容是字符串。–>
hello.xsd
----------
<?xml 
version=”1.0″?> 
<xsd:schema 
xmlns:xsd=”
http://www.w3.org/2001/XMLSchema”>
<xsd:element 
name=”greeting” 
type=”xsd:string”/>

</xsd:schema>
XML 
Schema文档后缀名是.xsd,完全符合XML语法,根元素是schema,命名空间xmlns:xsd=”
http://www.w3.org/2001/XMLSchema,用元素<element>定义实例文档中的元素,如greeting。

2. 含子元素的Schema文档 

假设实例文档是如下的:
customer.xml
———–
<customer>
<name>teiki</name>
<address>No.237, 
Road 
Waitan, 
Shanghai</address>
</customer>
则可以写出以下的XML 
Schema文档:
customer.xsd
—————-
<?xml 
version=”1.0″?>
<xsd:schema 
xmlns:xsd=”
http://www.w3.org/2001/XMLSchema”>
<xsd:element 
name=”customer”>
<xsd:complexType>
<xsd:sequence>
<xsd:element 
name=”name” 
type=”xsd:string”/>
<xsd:element 
name=”address” 
type=”xsd:string” 
/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
实例文档customer.xml中,<customer>元素含有两个子元素,所以我们在Schema文档中采用ComplexType来定义该元素。sequence表示子元素依次出现的顺序。

3. 含子元素和孙元素的Schema文档

这次我们给出一个更加复杂一些的文档:
customer.xml
—————
<customer>
<name>Teiki</name>
<address>
<!– 
address追加一个地址子元素 
–>
<prefecture>Zhejiang</prefecture>
<city>Hangzhou</city>
<street>Xilu 
Road, 
No.121, 
7F</street>
</address>
</customer>
 
为此,我们需要一个更加复杂一点的Schema文档:
address.xsd
—————–
<?xml 
version=”1.0″?>
<xsd:schema 
xmlns:xsd=”
http://www.w3.org/2001/XMLSchema”>
<xsd:element 
name=”customer”>
<xsd:complexType>
<xsd:sequence>
<xsd:element 
name=”name” 
type=”xsd:string”/>
<!– 
追加子元素address–>
<xsd:element 
name=”address”>
<xsd:complexType>
<xsd:sequence>
<xsd:element 
name=”prefecture” 
type=”xsd:string”/>
<xsd:element 
name=”city” 
type=”xsd:string” 
/>
<xsd:element 
name=”street” 
type=”xsd:string” 
/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
 
 
 
 
 
 
 
 
 
 
 
 
 
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
不过,我们还可以采用ref元素来重新编写这个Schema文档:
address2.xsd
———————-
<?xml 
version=”1.0″?>
<xsd:schema 
xmlns:xsd=”
http://www.w3.org/2001/XMLSchema”>
<xsd:element 
name=”customer”>
<xsd:complexType>
<xsd:sequence>
<xsd:element 
name=”name” 
type=”xsd:string”/>
<xsd:element 
ref=”address”/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element 
name=”address”>
<xsd:complexType>
<xsd:sequence>
<xsd:element 
name=”prefecture” 
type=”xsd:string”/>
<xsd:element 
name=”city” 
type=”xsd:string” 
/>
<xsd:element 
name=”street” 
type=”xsd:string” 
/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
使用ref元素可以直接将其指向另一个模块,使文档更加具有可读性。

原文
点击打开链接



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/219137.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2020/7/7学习记录

    2020/7/7学习记录1.微信小程序text内容显示空格<text decode=”{{true}}”space=”{{true}}”>报名人数&nbsp;</text>decode=”{{true}}”space=”{{true}}2.

    2022年8月18日
    9
  • 网络适配器的作用是什么?网络适配器工作在哪一层?

    网络适配器的作用是什么?网络适配器工作在哪一层?答:适配器(即网卡)来实现数据链路层和物理层这两层的协议的硬件和软件网络适配器工作在TCP/IP协议中的网络接口层(OSI中的数据链路层和物理层)…

    2022年6月9日
    62
  • 深度学习网络篇——ResNet

    深度学习网络篇——ResNetResNet作者:KaimingHe,XiangyuZhang,ShaoqingRen,JianSun研究机构:MicrosoftResearchAboutKaimingHe:2003年广东省理科高考状元,清华基础科学班,香港中文大学攻读研究生,微软亚研院实习,现在FAIR工作主要文献:ResNet,Faster-RCNN(ShaoqingRen一作),S…

    2025年7月27日
    4
  • Python+Selenium面试题(附详细解答)

    Python+Selenium面试题(附详细解答)一、选择题(1分18题,共18分)1.下面哪些关于自动化测试的说法是错误的:(ACD)A.自动化测试可以完全取代手工测试B.自动化测试可以大幅度减少测试团队的工作量C.性能测试不能自动化D.自动化测试能够发现大量的新缺陷2.下列哪种是Python元组的定义方式?(ABCD)A.([2,3],1) B.(1,) C.(1,{“name”:”sex”}) D….

    2022年6月20日
    58
  • 采用CreateThread()创建多线程程序[通俗易懂]

    采用CreateThread()创建多线程程序[通俗易懂]采用CreateThread()创建多线程程序在window环境下,Win32提供了一系列的API函数来完成线程的创建、挂起、恢复、终结以及通信等工作:1、主要的函数列表:序号函数名功能1CreateThread()创建一个新线程2ExitThread()正

    2022年7月11日
    24
  • Android 浏览器分享到APP「建议收藏」

    Android 浏览器分享到APP「建议收藏」1.在配置文件添加权限&lt;uses-permissionandroid:name="com.android.launcher.permission.INSTALL_SHORTCUT"/&gt;2.在配置文件中给分享到APP的界面(Acticiy)添加intent-filter&lt;intent-filter&gt;&lt;actionandroid:name="android…

    2022年5月14日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号