With the release of ArcIMS, ESRI’s map server software, GIS users were also introduced to ArcXML. ArcXML is ESRI’s flavor of XML and stands for Arc eXtensible Markup Language. ArcXML is the language used for sending requests and receiving responses through ArcIMS’ spatial server.
ArcXML encodes geographic data and map server functions. There are three functions of ArcXML:
1. Defines map service (Author)
2. Defines web site configuration (Designer)
3. Communicates with the spatial server via response and requests.
ArcXML is found throughout the functionality of ArcIMS. To quote ArcXML “always lurks beneath.”
What is XML?
XML is a web standard developed by the World Wide Web Consortium (W3C). XML transports structured text between client and server. Like HTML, XML is an easy language to understand and use. It is platform independent and supports internationalization and localization. While it looks similar in coding style, XML differs from HTML in that programmers define the rules. HTML has a fixed element set. HTML defines how to display content in browsers. XML has a custom element set that defines the content to be displayed. That is why you see different flavors of XML. Within GIS, GML (Geography Markup Language) and ArcXML are the two most predominant variations.
ArcXML statements are comprised of elements and attributes. All elements must also be written in upper case. Child elements are elements inside of other elements. Attributes are name-value pairs that describe the element. All attributes must be in lowercase and written within double quotes. All elements must be closed. As with HTML, elements are closed by tags containing the element name with the forward slash in front of it:
<SIMPLERENDERER> <SIMPLEFILLSYMBOL color="247,202,202" /> - Child Element </SIMPLERENDERER>
Elements contain within one tag are closed with the forward slash located at the end of the tag:
<MAPUNITS units="DECIMAL_DEGREES" />
The best resource available is the “ArcXML’s Programmer’s Guide.” It’s an online help document produced by ESRI that shows syntax and examples for coding in ArcXML. This and many other resources for ArcIMS can be found at ESRI’s ArcOnline site.
ArcXML Tips and Tricks
- To see requests and response, set Debug=3 in the arcimsparams.js file. This sets up alert windows showing the ArcXML code that is being passed between the client and the server.
- As with HTML, you can create comment lines by inserting text between <!— and à.
- The axl2axl converter utility can be downloaded from the ArcOnline site and converts map configuration files from ArcIMS 3.0 to 3.1.
- There are third party editors to help with programming in ArcXML. One such editor is called Xeena and can be downloaded from the IBM web site. Xeena is written in Java and is no-cost. Another editor is called XML Spy but costs. A third option is Microsoft’s XML notepad. One caveat is that the first line is interpreted and will subsequently throw the XML code off by one line.
In order to take advantage of these editors you will need the Document Type Delineation (DTD) file for ArcIMS which can be downloaded from ESRI’s ArcOnline site. This file defines the rules of ArcXML so that the XML editor can help regulate the structure of your ArcXML code.