XML - Gateway to interoperability
Ian Martin Program Manager, Technical Services Analytical Surveys, Inc. 11900 Crownpoint Drive, Suite 100 San Antonio, TX 78233 Telephone: (210) 657-1500, Mobile: (210) 862-9232, Fax: (210) 657-1304 Email: imartin@anlt.com Abstract Integrating applications is a common and necessary function of most GIT project implementations. Designing application data gateways between Geographic Information Systems (GIS), Outage Management Systems (OMS), and other related business process applications is key to the successful enterprise GIT implementation. Extensible Markup Language (XML) is a set of rules for designing text-based structured data formats that is fast emerging as the standard for structured data exchange on the Internet. Standard enterprise data interchange formats based on XML and related technologies like XLINK, XSL, and XSLT can be utilized to create an enterprise data interoperability framework that can streamline and simplify the task of application data integration. In addition, XML can be used to take application integration to the "next level", and extend a structured interoperability framework into a real-time data exchange between related GIT systems. Finally, XML can be used to streamline future GIT platform upgrades by providing structured source data formats that are more easily integrated into the target GIT data model. Introduction There is truly an alphabet soup of technical acronyms in the data interoperability and Web services programming arena. The goal of this paper is to introduce the consumer to the enabling technology with the stated goals being to help build an understanding of the concept of data interoperability; to learn how XML and related technologies can contribute to application and platform interoperability; and to discover how XML can streamline future data migration processes. XML and related technologies are fast emerging as the standard for structured data exchange on the Internet, and comprise the backbone, the enabling technology behind web services and lightweight application interoperability frameworks. Proposed application interoperability standards, like MultiSpeak, GML and LandXML, rely heavily on XML schemas and Document Type Definitions (DTDs) to define how applications can communicate and share object information in a structured manner. Technology Standards? All of the standards that define the various languages, formats and protocols specific to application and data interoperability were conceived and developed by the World Wide Web Consortium (W3C). The W3C is a joint venture of MIT, CERN, DARPA, and the European Commision. Establised in 1994, the W3C now includes over 500 member organizations committed to promoting the evolution and interoperability of the World Wide Web. What follows is an introduction to the technology standards which is, admittedly, very much influenced by the W3C website and technical papers. In keeping with the goals of this presentation, the information has been simplified to faciliate greater understanding by a wider audience. In all cases, references to original definitions and technical works are documented. XML XML is a W3C recommendation that describes a subset of Standard Generalized Markup Language (SGML) (ISO 8879). XML has been designed for ease of implementation and for interoperability with both SGML and HTML (W3C, 2000). XML is a text-based, structured file format that presents a method for storing and exchanging data between disparate applications. XML has grown from its markup and document presentation roots into a nearly-ubiquitous format for data storage and information exchange. Related technologies such as XML Schema, the Document Object Model (DOM), and the Simple API for XML (SAX) have given Web programmers, administrators and content managers the ability to present structured XML files as interfaces between disparate systems and to better manage and extend the capabilities of legacy systems as well as develop next-generation applications and web services. XML Schema XML Schema is a W3C recommendation for describing complex restrictions on elements and attributes (W3C, 2001). Schemas describe what constitutes a well-formed XML document in much the same way that a DTD does, but a schema can be extended and combined with other schemas to validate multiple XML formats and the relationships between the elements in an XML file (Harold and Means, 2002). The XML Schema recommendation is a powerful tool for maintaining data quality and ensuring applications do not fail due to data or schema problems. While users have relied on DTDs in the past to fill this role, DTDs cannot inherently validate complex relationships or custom data types. In data-centric applications, XML documents can be validated against one-to-many XML Schemas to ensure that the data contained in the document meets certain criteria or adhere to customized business rules. This makes XML Schema a key part of any scalable, data-centric XML application. DOM The Document Object Model (DOM) defines an Application Program Interface (API) for accessing and manipulating XML documents as tree structures (Harold and Means, 2002). DOM Level 2 is a W3C recommendation for expressing the structure and content of documents in a hierarchical, object-oriented framework. DOM is used to provide users with a common interface to access and manipulate the structure and content of HTML and XML documents. It allows the application program to traverse XML nodes, and access the structure of the XML document. DOM can be extended using related technologies to access embedded attributes and update those attributes. Any two DOM implementations accessing the same document will, by definition, create the same structural model of that document. This concept is called structural isomorphism (W3C, 2000), and it is a key reason that DOM lends itself so well to application in a standardized data interoperability framework. XSLT XSL Transformations (XSLT) is a W3C working draft that defines the syntax and semantics of XSLT, which is a language for transforming XML documents into other XML documents (W3C, 2002). The function of XSLT is to allow for a structured, rules-based method for transforming one XML document into another. XSLT is a unique application of XML, in that it can be considered a true programming, or scripting, language (Harold and Means, 2002). XSLT allows the application programmer infinite control over parsing and transforming any XML document. The primary application of XSLT to the GIT industry lies primarily in its ability affect rapid and repeatable transformations (migrations or conversions) of data between different end-user GIS platforms or ancillary applications. This could include creating a real-time, or near real-time, interoperability framework, or simply providing an import path into the end-user system. Industry Standards The GIT industry has undertaken several initiatives to utilize XML and related technologies to establish standards for the structured exchange of spatial data. Those standards include, among others, MultiSpeak, GML, and LandXML. MultiSpeak? MultiSpeak is an interoperability framework conceived and developed by the Cooperative Research Network (CRN) of the National Rural Electric Cooperative Association (NRECA) in collaboration with utility industry software vendors and consultants. MultiSpeak is an XML DTD that defines a standard format for passing information between MultiSpeak compliant software packages. The goal of MultiSpeak is to ease the task of application integration for small to medium sized utilities. The MultiSpeak model is specific to electric utility implementations. GML The Geography Markup Language (GML) is an XML encoding for the transport and storage of geographic information, including both the spatial and non-spatial properties of geographic features (OGC, 2001). The OGC conceived GML as a standard that would provide the following benefits:
The LandXML schema facilitates the exchange of data created during the Land Planning, Civil Engineering and Land Survey process (LandXML.org, 2002). LandXML is an XML application that utilizes XML Schema to define relationships and custom data types. Much like GML, LandXML is a fairly robust application of XML as a data format. However, it is targeted specifically towards land planning, engineering and survey applications. GIT Applications Application Interoperability XML has gone from relative obscurity to almost universal acceptance as a data interchange format in the matter of a few years. Data-intensive Internet exchanges and enterprise application integration (EAI) implementations are now dominated by XML-based data formats. The structured, standardized nature of DOM and XML, the structural isomorphism mentioned in the technology standards discussion, allows for cross-platform implementations of applications that streamline the transport, presentation and management of data. GIT implementations will benefit from the advances made in the EAI industry with regard to XML as a data format. GIS will now be able to share data with OMS, Work Management Systems (WMS), and Customer Information Systems (CIS) in near real-time or real-time fashion. This will enable the elimination of redundant processes, thereby leveraging and extending key business process investments. XML applications such as XML Schema can be integrated into the EAI framework to ensure that specialized business rules are enforced. Finally, initiatives like MultiSpeak? will make this work easier and more cost-effective for smaller entities by defining the target EAI framework up front and allowing software vendors and system integrators to build to that specification. Field Force Automation Field force automation is of particular interest to companies with significant outside plant assets. Utility companies have long recognized the benefits of making geospatial information available to their employees and sub-contractors. As technological advances in communications and computing make wireless information exchange faster and cheaper, companies will realize the benefits of XML data formats and applications that enable IT departments to present large quantities of graphic and non-graphic information to field crews, inspectors, and construction sub-contractors. Originally, digital data products distributed on CDs or specialized data-push applications designed for use on mobile data terminals have dominated the mobile mapping and field force automation market. These first and second-generation applications are slowly giving way to the third-generation of mobile mapping and field force automation products based upon XML technologies. Because XML is text-based, it responds favorably to traditional compression methods. This allows the transport of large volumes of compressed XML data via the wireless Internet in a near real-time data-pull or real-time synchronized manner. Telephones, hand-held computers, and TabletPCs will soon replace mobile data terminals and laptop computers as the necessary hardware for these applications, further reducing the cost and complexity of mobile computing implementations. Legacy Data Migration As more spatial data interchange formats built upon XML technologies become available, XML applications like XML Schema and XSLT will make migration between end-user GIS systems faster and easier. Schema-based formats like GML and LandXML are already in use as standard interchange formats for several end-user applications. Other open systems utilize GML as their standard data storage format. As GIS applications begin to support imports of XML data, migration into and out of those systems will become an off-the-shelf document transformation process. XML Schema will allow the validation of source and target datasets against their respective schemas, and XSLT will present framework for creating rapidly deployable and repeatable migrations processes using standard XML interchange formats. Conclusion XML and related technologies play a key role in facilitating application and data interoperability. In addition, new growth areas like field force automation and legacy data migration will benefit from the application of XML-based technologies that leverage existing investments in data and processes. The open, extensible structure of XML coupled with technologies like DOM and XML applications like XSLT and XML Schema makes XML a good choice for the development of standardized data interoperability frameworks. Industry initiatives like MultiSpeak, GML and LandXML bear out this point and illustrate how spatial data can be modeled, managed, and exchanged using this technology. Lately, the trend in the GIT industry has been towards more open standards of information storage and interchange. XML will continue to expand this trend and provide application programmers a standardized framework for the development of rapidly deployable applications and scalable integrated GIT implementations. References Harold, E. R. and Means, W. S., 2002. “XML in a Nutshell”, 2nd Edition, O’Reilly and Associates, Inc. LandXML.org Industry Consortium, “LandXML Schema Version 1.0 Reference”, LandXML.org, 7 June 2002, < http://www.landxml.org/spec.htm> (1 November 2002). Specification. McNaughton, G. A. and Martin, G. E., 2001, “Common Interfaces for Enterprise Integration – Experience With NRECA’s MultiSpeak? Specification”, 2001 IEEE Rural Electric Power Conference Proceedings. OpenGIS Consortium, "Geography Markup Language (GML) 2.0", OpenGIS ? Consortium, 20 February 2001, http://opengis.net/gml/01-029/GML2.html (23 October 2002), Abstract. World Wide Web Consortium, “Document Object Model (DOM) Level 2 Core Specification”, The World Wide Web Consortium, 13 November 2000, http://www.w3.org/TR/DOM-Level-2- Core/ (1 November 2002), Abstract. World Wide Web Consortium, “Extensible Markup Language (XML) 1.0, Second Edition”, The World Wide Web Consortium, 6 October 2000, http://www.w3.org/TR/REC-xml (11 September 2002), Abstract. World Wide Web Consortium, "XML Schema Part 0: Primer", The World Wide Web Consortium, 2 May 2001, http://www.w3.org/TR/xmlschema-0/ (1 November 2002), Abstract. World Wide Web Consortium, "XSL Transformations (XSLT) Version 2.0", The World Wide Web Consortium, 16 August 2002, http://www.w3.org/TR/xslt20/ (11 September 2002), | ||
|
|