|
阅读:1533回复:2
ArcXML——基于INTERNET的空间数据描述语言
<TABLE cellSpacing=0 cellPadding=0 width=568 border=0>
<TR> <TD vAlign=center align=middle width=568> <P align=center><FONT face=黑体 size=3>ArcXML——基于INTERNET的空间数据描述语言 </FONT></P></TD></TR></TABLE> <P align=left><FONT face=Arial>ArcXML</FONT>格式是专为在<FONT face=Arial>ArcIMS</FONT>中不同部件间进行数据交换而设计的一种协议,是特定的一种<FONT face=Arial>XML</FONT>语言。</P> <P align=left>要想了解什么是<FONT face=Arial>ArcXML</FONT>,首先我们来看看什么是<FONT face=Arial>XML</FONT>?<FONT face=Arial>XML</FONT>是<FONT face=Arial>eXtensible Markup Language</FONT>(可扩展的标记语言)的缩写。<FONT face=Arial>XML</FONT>并非象<FONT face=Arial>HTML</FONT>那样,提供了一组事先已经定义好了的标签,而是提供了一个标准,利用这个标准,你可以根据实际需要定义自己的新的标记语言,并为你的这个标记语言规定它特有的一套标签。所以<FONT face=Arial>XML</FONT>可以做为派生其它标记语言的元语言。另一方面,<FONT face=Arial>HTML</FONT>侧重于如何表现信息;而<FONT face=Arial>XML</FONT>侧重于如何结构化地描述信息。在<FONT face=Arial>Internet</FONT>上,服务器与服务器之间、服务器与浏览器之间有大量的数据需要交换,特别是在电子商务中。这些被交换的数据,都被要求对数据的内容和表现方式有所说明。因此在<FONT face=Arial>Internet</FONT>世界<FONT face=Arial>XML</FONT>的用途主要有两个,一是作为元标记语言,定义各种实例标记语言标准;二是作为标准交换语言,担负起描述交换数据的作用。而<FONT face=Arial>ArcXML</FONT>就是<FONT face=Arial>XML</FONT>派生的用在<FONT face=Arial>ArcIMS</FONT>软件中的标记语言,它有自己定义的一组标签。 </P> <P ><b><FONT face=Arial>ArcXML</FONT>的基本语法规则 </b></P> <P ><FONT face=Arial>ArcXML</FONT>语法的基本形式为:(标记名(属性名<FONT face=Arial>=</FONT>“属性值”)<FONT face=Arial>/</FONT>标记名)。 它的定义遵循以下规则:</P> <BLOCKQUOTE> <P ><FONT face=Arial>* </FONT>所有的属性名必须小写。 <FONT face=Arial>* </FONT>所有的标签和子标签必须大写 <FONT face=Arial>* </FONT>属性值必须用“”扩起,属性值不区分大小写 <FONT face=Arial>* </FONT>系统字库区分大小写。如“<FONT face=Arial>Arial</FONT>”可以识别,而“<FONT face=Arial>arial</FONT>”不能被识别。 <FONT face=Arial>* ArcIMS 3.0</FONT>支持<FONT face=Arial>ArcXML 1.0.1</FONT>及更早版本。 <FONT face=Arial>* ......</FONT></P></BLOCKQUOTE> <P >(详见<FONT face=Arial>ArcIMS 3.1</FONT>随附资料:《<FONT face=Arial>ArcXML</FONT>程序员参考手册》) </P> <P ><b><FONT face=Arial>ArcXML</FONT>的框架 </b><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-11.gif" align=right></P> <P ><FONT face=Arial>ArcXML</FONT>使用分级标签系统为<FONT face=Arial>ArcIMS</FONT>部件之间的通讯提供了基本框架结构。我们今天只是概述一下不同标签之间的关系。详细内容可以在《<FONT face=Arial>ArcXML</FONT>程序员参考手册》中找到。</P> <P >在<FONT face=Arial>ArcXML</FONT>体系中下面的五个标签提供了基本框架。<FONT face=Arial>ArcXML</FONT>标签包含在<FONT face=Arial>ArcXML</FONT>的声明部分。四个根子标签<FONT face=Arial>CONFIG</FONT>,<FONT face=Arial>REQUEST</FONT>,<FONT face=Arial>RESPONSE</FONT>和<FONT face=Arial>MARKUP</FONT>定义了<FONT face=Arial>ArcXML</FONT>声明的类型。</P> <P ><FONT face=Arial>CONFIG</FONT>标签通过设定属性和定义图层配置地图;<FONT face=Arial>REQUEST</FONT>,<FONT face=Arial>RESPONSE</FONT>和<FONT face=Arial>MARKUP</FONT>标签用于在不同部件间进行通讯。所有从客户端向空间服务器传递的请求用<FONT face=Arial>REQUEST</FONT>标签。<FONT face=Arial>RESPONSE</FONT>标签用在从空间服务器返回的响应中。<FONT face=Arial>MARKUP</FONT>标签描述了在客户端通过<FONT face=Arial>EditNotes</FONT>工具进行的修改。 </P> <P ><b>地图服务配置文件 </b><FONT face=Arial>CONFIG</FONT>标签用于在地图服务配置文件中定义图层和属性。可以通过<FONT face=Arial>ArcIMS</FONT>的创作员和<FONT face=Arial>ArcExplorer 3</FONT>生成<FONT face=Arial>AXL</FONT>文件,并在文本编辑器或<FONT face=Arial>XML</FONT>编辑器中修改。通过地图服务配置文件可以生成地图服务。有两种类型的地图服务:影像和矢量。虽然他们的工作方式不同,但可以通过同一地图服务配置文件生成不同类型的地图服务。</P> <P ><FONT face=Arial>CONFIG</FONT>包含三个子标签:<FONT face=Arial>MAP</FONT>,<FONT face=Arial>SCALEBAR</FONT>和<FONT face=Arial>OVERVIEWMAP</FONT>。<FONT face=Arial>MAP</FONT>标签定义了图层及配置信息。<FONT face=Arial>SCALEBAR</FONT>和<FONT face=Arial>OVERVIEWMAP</FONT>用来定义<FONT face=Arial>ArcIMS</FONT>可定制的<FONT face=Arial>Java Viewer</FONT>中的比例尺工具条和索引图<FONT face=Arial>applet</FONT>属性。</P> <P >地图配置文件示例 </P> <P align=center><a href="http://www.esrichina-bj.cn/library/chinanews/image/new10-9-b.gif" target="_blank" ><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-9.gif" border=0></A>(点击图放大)</P> <P align=left><b><FONT face=Arial>ArcXML</FONT>的<FONT face=Arial>REQUEST</FONT>和<FONT face=Arial>RESPONSE </FONT></b></P> <P align=left>当客户端向运行在<FONT face=Arial>ArcIMS</FONT>空间服务器上的地图服务发请求时,就相应产生通讯。如查询一张新的地图,返回地理要素的属性,改变图层的显示方式,显示或关闭地图。使用<FONT face=Arial>ArcIMS Java Viewer</FONT>时,客户端还生成获取数据流的请求。空间服务器根据请求将响应返回客户端。<IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-18.gif" align=left></P> <P ><FONT face=Arial>REQUEST</FONT>和<FONT face=Arial>RESPONSE</FONT>使用一些与<FONT face=Arial>CONFIG</FONT>相同的标签,但有时这些标签的行为不同。<FONT face=Arial>ArcXML</FONT>支持五种类型的请求。每个请求对应一个响应标签。</P> <BLOCKQUOTE> <P ><FONT face=Arial>1</FONT>、<FONT face=Arial>GET_SERVICE_INFO</FONT>用于得到地图服务的信息。<FONT face=Arial>SERVICEINFO</FONT>对应响应。 <FONT face=Arial>2</FONT>、<FONT face=Arial>GET_IMAGE</FONT>用于得到地图影像。<FONT face=Arial>IMAGE</FONT>对应响应。 <FONT face=Arial>3</FONT>、<FONT face=Arial>GET_FEATURES</FONT>用于得到矢量数据值和属性。<FONT face=Arial>FEATURES</FONT>对应响应。 <FONT face=Arial>4</FONT>、<FONT face=Arial>GET_GEOCODE</FONT>用于地址匹配。<FONT face=Arial>GEOCODE</FONT>对应响应。 <FONT face=Arial>5</FONT>、<FONT face=Arial>GET_EXTRACT</FONT>用于提取地理要素下载到客户端。<FONT face=Arial>EXTRACT</FONT>对应响应。 </P></BLOCKQUOTE> <P >除了<FONT face=Arial>GET_SERVICE_INFO</FONT>可以用于任何服务器外,每一组请求和响应对应一种类型的虚拟服务器。 </P> <P ><FONT face=Arial>REQUEST</FONT>和<FONT face=Arial>RESPONSE</FONT>示例: </P> <P align=center><a href="http://www.esrichina-bj.cn/library/chinanews/image/new10-16-b.gif" target="_blank" ><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-16.gif" border=0></A>(点击图放大)</P> <P ><FONT face=Arial><b>ArcXML MARKUP</b> MARKUP</FONT>标签描述了在客户端通过<FONT face=Arial>EditNotes</FONT>工具所做的编辑。这个工具在<FONT face=Arial>ArcIMS Java Viewer</FONT>上提供,并只能应用在矢量地图服务上。用户可以对矢量图层进行简单编辑,并将结果提交给空间服务器。提交的结果可以转换为<FONT face=Arial>shapefile</FONT>或<FONT face=Arial>ArcXML</FONT>格式。</P> <P ><FONT face=Arial>MARKUP</FONT>有三个子标签:<FONT face=Arial>ADDEDFEATURES</FONT>,<FONT face=Arial>MODIFIEDFEATURES</FONT>和<FONT face=Arial>DELETEDFEATURES</FONT>。每一个标签包含的信息有要素<FONT face=Arial>ID</FONT>,外接矩形和用<FONT face=Arial>FEATURE</FONT>子标签定义的字段值。一些<FONT face=Arial>FEATURE</FONT>标签可以<FONT face=Arial>CONFIG</FONT>,<FONT face=Arial>REQUEST</FONT>或<FONT face=Arial>RESPOINSE</FONT>,但他们与用在<FONT face=Arial>MARKUP</FONT>中的意思不同。 </P> <P ><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-17.gif"></P> <P >下面是<FONT face=Arial>MARKUP</FONT>标签的示例。其中增加要素的信息<FONT face=Arial>ADDFEATURES</FONT>标签下;类似地,<FONT face=Arial>DELETEDFEATURES</FONT>标签包含了删除要素的信息,而<FONT face=Arial>MODIFIEDFEATURES</FONT>标签则描述修改要素的信息。</P> <P align=center><a href="http://www.esrichina-bj.cn/library/chinanews/image/new10-15-b.gif" target="_blank" ><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-15.gif" border=0></A>(点击图放大)</P> <P ><b><FONT face=Arial>ArcXML</FONT>图形模型 </b><FONT face=Arial>ArcXML</FONT>标签可用来描述图形。包括三个标签:<FONT face=Arial>POLYGON</FONT>,<FONT face=Arial>POLYLINE</FONT>和<FONT face=Arial>MULTIPOINT</FONT>。信息可以被写成一种压缩的“短”格式或不压缩的“长”格式。组成要素的点的坐标单位与在<FONT face=Arial>PROPERTIES</FONT>标签的子标签<FONT face=Arial>MAPUNITS</FONT>中定义的一致。通过投影标签,请求到的数据可以与原始数据的坐标系不同。 </P> <P ><FONT face=Arial>POLYGON </FONT></P> <P align=center><a href="http://www.esrichina-bj.cn/library/chinanews/image/new10-14-b.gif" target="_blank" ><FONT face=Arial><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-14.gif" border=0></FONT></A>(点击图放大)</P> <P ><FONT face=Arial>POLYLINE</FONT></P> <P align=center><FONT face=Arial><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-13.gif"></FONT></P> <P ><b>压缩的“短”格式 </b></P> <P ><FONT face=Arial>MULTIPOINT </FONT></P> <P align=center><FONT face=Arial><IMG src="http://www.esrichina-bj.cn/library/chinanews/image/new10-12.gif"></FONT></P> |
|
|
|
1楼#
发布于:2004-10-10 11:40
<ADDRESS><FONT style="BACKGROUND-COLOR: #6be61a" face=细明体 color=#ff0000 size=7><b><U>v</U></b></FONT></ADDRESS><img src="images/post/smile/dvbbs/em03.gif" /><img src="images/post/smile/dvbbs/em04.gif" /><img src="images/post/smile/dvbbs/em05.gif" /><img src="images/post/smile/dvbbs/em06.gif" /><img src="images/post/smile/dvbbs/em07.gif" /><img src="images/post/smile/dvbbs/em08.gif" /><img src="images/post/smile/dvbbs/em02.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />
|
|
|
2楼#
发布于:2004-09-22 22:44
<P>写的不错要。</P><P>辛苦了!<img src="images/post/smile/dvbbs/em02.gif" /></P>
|
|