当前位置: 首页 > news >正文

Web服务初探:用Demo学Web服务系列(7)——XML的相关知识

我们前面的《Web服务初探:用Demo学Web服务系列》六个随笔中已经探讨完了C/S程序对Web Services的调用,大家感觉难吗?下面我们就有关的Web Services的原理讲解一下。
      有关XML的知识在网络上有不少的书籍讲解了,这里我们就不去研究其历史发展或与Web Services无关的知识,有兴趣的博友可以自己去找些类似的书籍阅读这些部分的内容。下面我们开始这个随笔的内容吧!

一、XML的基本语法:
1、标记语法
      知道和了解Html语法的人都了解标记的含义,XML也是如此,其实Html语言和XML语言都是来源于SGML语言的,因此两者有着非常类似的结构。下面我们分别来看两个简单的例子:
1<h1 Align="Center">这里是小写的HTML语言头</h1>
2<H1 ALIGN="Center">这里是大写的HTML语言头</H1>
3<!--这是HTML语言格式的两种情况-->
1<DataTable TableName="MyTable">这里是小写的XML数据</DataTable>
2<DATATABLE TABLENAME="MyTable">这里是大写的XML数据</DATATABLE>
3<!--这是XML数据的两种情况-->
对于Html语言来说是不区分大小写的,然而对于Xml语言则是区分大小写的,所以上面的例子中Html语言的两种情况是一样的,而Xml语言的两种情况则是不同。
      除了Xml语言的大小写区分外,还有一些编码等方面的知识,通常Xml文档默认是使用“UTF-8”,此编码在欧美常被使用,在亚洲并不通用。我们可以使用“UTF-16”。这两种编码要求被所有的Xml处理器支持。

2、Xml文档的结构
      所有正规的Xml文档都有一到三部分组成:序言(可选)、主体(必须)和尾声(可选)。
 1<?xml version="1.0" encoding="utf-8" ?> 
 2<!--这里是序言-->
 3<TextFile>
 4       <Line>A</Line>
 5       <Line>B</Line>
 6       <Line>C</Line>
 7</TextFile>
 8<!--这里是主体-->
 9<EOF/>
10<!--这里是尾声-->

3、标记的属性
      和Html语言中的标记属性可以不用引号引起来的语法不同,在Xml语言中标记属性必须用引号(单引或双引)引起来,其语法格式如下代码:
1<DataTable TableName="MyTable"></DataTable><!--这是正确的属性-->
2<DataTable TaleName=MyTable></DataTable><!--这是错误的属性-->

注:有关此方面的更多知识请参看Xml的有关书籍。

二、Xml文档在Web Services中的应用
      Xml文档在Web Services的应用主要是在Soap消息中,Soap消息是我们与Web Services通信的机制,而Soap消息中携带的Xml文档也是大家都能解释理解的数据存储文档。正如大多数讲述Soap消息的书籍中所举的例子一样,Xml文档就是信内容,而这封信内容可以被大多数阅读器所理解,Soap消息加上Http协议或者是Ftp协议则是这封信的信皮,其中写明了收信人的地址和姓名,收信人地址是指发送给哪个服务,姓名是指此服务中的哪个方法使用这封信中数据。


总结:我们这次简单的讲解了Xml文档的书写语法和在Web Services中Soap消息中的应用。Soap消息都是在后台被执行和解释的,所以我们都很难看到。下一篇随笔我们来更详细的讲解Soap消息,并结合前面所举的例子。

附:下面提供一些关于Xml的电子书籍的书名(本来想上传上来的,然而每本书籍都有20M左右,故只有提供书名,大家到百度搜索看看是否能下载到,并希望将你下载的连接发表到评论,方便其他的博友下载,万分感谢),本随笔的个别地方的讲解也参考了这些书籍:
《XML编程技术大全》、《XML高级编程》、《XML高级网络应用》和《XML手册(第4版)》。

转载于:https://www.cnblogs.com/lijigang/archive/2006/11/29/574112.html


http://www.taodudu.cc/news/show-647377.html

相关文章:

  • 【physx/wasm】在physx中添加自定义接口并重新编译wasm
  • excel---常用操作
  • Lora训练Windows[笔记]
  • linux基础指令讲解(ls、pwd、cd、touch、mkdir)
  • InnoDB 事务处理机制
  • 启明云端ESP32 C3 模组WT32C3通过 MQTT 连接 AWS
  • DHH观点:为什么我偏爱Ruby?
  • 想到就去做
  • FTP中的收获
  • ASP.Net2.0 数据绑定控件的优越性在哪里?
  • 装AJAX.NET 1.0的环境,我遇到个问题,进来解答下
  • 信任的力量
  • 不能装载通讯模块。驱动程序安装不正确。
  • 面向搜索的中文分词设计
  • SQL Server 2005与2000写法上的差别
  • CG笔记之一——透视投影
  • SQLite B+树实现代码
  • Some thoughts on my own O/R Mapping or Code Generation tools
  • [翻译] 构建完美的WPF开发工作站
  • J2EE Architecture(4)
  • JSF优点(转载自中国IT实验室)
  • 如何自学JSP。--摘抄http://hi.baidu.com/comasp
  • max与top的效率
  • 精确计算代码执行时间
  • 理解 ActivityExecutionContextManager
  • Linq 演变的过程(delegate = Lamb = Linq)
  • 光阴四载,梦想在望
  • CSS常用文本属性
  • VSS2005 添加文件夹方法!
  • 一个不错的SQL储存过程分页,储存过程+Repeater,如果只是浏览数据的话,快就一个字...
  • DotNetNuke与MemberShip的结合(五年版) 三步汇总
  • 快速恢复Word、Excel的默认初始设置
  • AnkhSVN 1.0.2778 简体中文版发布
  • [转]获取xml节点值和属性值(兼容ie和firefox)
  • 请问如何把.net framework框架集成在安装程序里头?
  • 修改资料时碰到的问题,