# Presentation: 227592

## XML and Geodesy: A SOPAC Perspective

- Paul Jamason, Scripps Orbit and Permanent Array Center
- IGS Analysis Center Conference, Miami, June 2008

## SOPAC Participants

- Director: Yehuda Bock
- GPS Analysts:
- Peng Fang
- Linette Prawirodirdjo
- Programmers:
- Ruey-Juin Chang
- Paul Jamason
- Ian MacLeod
- Melinda Squibb
- System Administrator: George Wadsworth

## XML: An Overview

- XML: eXtensible Markup Language
- Framework for sharing structured data
- Hierarchical tree-like structure
- Extensible: users define their own elements and documents by extending base types
- Encode data via element names/attributes (self-describing format)
- XML schemas
- Validation: reduce publication of errors
- Translate XML documents (instances) to a variety of formats via stylesheets

## XML Example: siteOffsets.xml

- <siteOffsets xsi:schemaLocation="http://sopac.ucsd.edu/geodesy **http://sopac.ucsd.edu/ns/geodesy/1.0.2/reason/procInput/offsets/siteOffsets.xsd**>
- 	<offset>
-          <fourCharacterID>ldes</fourCharacterID>
-          <geod:sopacSiteID>ldes0000</geod:sopacSiteID>
-          <geod:date>1999-10-16T00:00:00</geod:date>
-          <geod:cause>co-seismic</geod:cause>
-          <comments>Hector Mine EQ</comments>
- 	   <offsetComponentMagnitude>
-             <geod:directionalComponent>north</geod:directionalComponent>
-             <geod:magnitude uom="mm">178.287</geod:magnitude>
-             <geod:sigma uom="mm">2.361</geod:sigma>
-          </offsetComponentMagnitude>
-          -- SNIP --
-       </offset>
- </siteOffsets>

_**http://garner.ucsd.edu/pub/gamit/setup/siteOffsets.xml**_

## XSD Example: siteOffsets.xsd

- <?xml version="1.0"?>
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-     targetNamespace="http://sopac.ucsd.edu/geodesy" xmlns:geod="http://sopac.ucsd.edu/geodesy"
-     xmlns:gen="http://sopac.ucsd.edu/general" elementFormDefault="qualified" version="1.0.2" xml:lang="en">
-     <xsd:include schemaLocation="includes.xsd"/>
-     <xsd:import namespace="http://sopac.ucsd.edu/general"
-         schemaLocation="http://sopac.ucsd.edu/ns/general/1.0.0/descriptors/spatialDescriptors.xsd"/>
- --SNIP--
- <xsd:complexType name="offsetType">
-         <xsd:sequence minOccurs="1" maxOccurs="1">
-             <xsd:element name="fourCharacterID" type="geod:gpsSiteFourCharacterID" minOccurs="1" maxOccurs="1"/>
-             <xsd:element name="date" type="geod:gpsDateType" minOccurs="1" maxOccurs="1"/>
-             <xsd:element name="cause" type="geod:offsetCauseType" minOccurs="1" maxOccurs="1"/>
-             <!-- 1 to 3 of north/east/up components here (and their mags, sigmas) -->
-             <xsd:element name="offsetComponentMagnitude" type="geod:offsetComponentMagnitudeType"
-                 minOccurs="1" maxOccurs="3"/>
-         </xsd:sequence>
-     </xsd:complexType>
-     <xsd:simpleType name="offsetCauseType">
-         <xsd:restriction base="xsd:string">
-             <xsd:enumeration value="co-seismic"/>
-             <xsd:enumeration value="equipment change"/>
-             <xsd:enumeration value="environmental change"/>
-             <xsd:enumeration value="creep event"/>
-             <xsd:enumeration value="monument disruption"/>
-             <xsd:enumeration value="metadata correction"/>
-             <xsd:enumeration value="processing software change"/>
-             <xsd:enumeration value="unknown"/>
-         </xsd:restriction>
- </xsd:schema>

## XML: (Dis)Advantages

- Advantages
- Set of standards for representing data; speak a common data language
- Validation reduces publication of errors
- Field formatting
- Limit valid entries (e.g., receiver/antenna types)
- Existing software:
- XML schema creation
- XML instance validation
- XSLT transformation

- Disadvantages
- Size
- Speed (validation)
- Additional work
- Difficult to visually interpret
- XML Schema creation can be unpleasant
- Not for large data files

## XML and Geodesy: Relevant Standards

- Open Geospatial Community (OGC): Geographic Markup Language (GML)
- http://www.opengeospatial.org/standards
- Observation Collections
- Filter Encoding
- Dublin Core Metadata Initiative (DCMI)
- Document-related
- Classify dates/files/services/creators
- Geodesy Standard?
- Define a set of xml schemas with core spatial, temporal, nominal parameters, and extend them

## Geodesy XML Candidates

- Metadata-oriented
- IGS site logs
- Processing setup files
- Processing software front-ends (e.g., GAMIT)
- Bluebooking - NGS geodetic data submission
- OrbitML (GMV) - spacecraft flight parameters
- RINEX, SINEX headers

## XML: Supporting Software

- XML parsers/transformation software available in variety of languages
- Java
- Perl - Xerces
- FORTRAN - xmlf90; xmlfortran
- XML schema generation software
- oxygenML for Eclipse
- Java class generation
- XMLBeans

## XML and Geodesy at SOPAC: IGS Site Logs

- Overview: _http://sopac.ucsd.edu/projects/xml_

## Sample XML IGS Site Log

- <igsSiteLog
-   xmlns="http://sopac.ucsd.edu/ns/geodesy/doc/igsSiteLog/2004"
-   xmlns:mi="http://sopac.ucsd.edu/ns/geodesy/doc/igsSiteLog/monumentInfo/2004"
-   xmlns:equip="http://sopac.ucsd.edu/ns/geodesy/doc/igsSiteLog/equipment/2004"
-     xsi:schemaLocation="http://sopac.ucsd.edu/ns/geodesy/doc/igsSiteLog/2004  http://sopac.ucsd.edu/ns/geodesy/doc/igsSiteLog/2004/igsSiteLog.xsd"
-   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-   <siteIdentification>
-     <mi:siteName>Scripps 5 - Mt. Soledad</mi:siteName>
-     <mi:fourCharacterID>SIO5</mi:fourCharacterID>
-     <mi:iersDOMESNumber>40460M006</mi:iersDOMESNumber>
-   </siteIdentification>
-   <siteLocation>
-     <mi:city>La Jolla</mi:city>
-     <mi:state>California</mi:state>
-     <mi:country>USA</mi:country>
-     <mi:approximatePositionITRF>
-       <mi:xCoordinateInMeters>-2456115.13</mi:xCoordinateInMeters>
-       <mi:yCoordinateInMeters>-4768905.79</mi:yCoordinateInMeters>
-       <mi:zCoordinateInMeters>3439232.44</mi:zCoordinateInMeters>
-       <mi:latitude-North>+325024.00</mi:latitude-North>
-       <mi:longitude-East>-1171500.00</mi:longitude-East>
-       <mi:elevation-m_ellips.>185.53</mi:elevation-m_ellips.>
-     </mi:approximatePositionITRF>
-  </siteLocation>
-   <gnssReceiver>
-     <equip:receiverType>ASHTECH Z-XII3</equip:receiverType>
-     <equip:satelliteSystem>GPS</equip:satelliteSystem>
-     <equip:serialNumber>LP02814</equip:serialNumber>
-     <equip:firmwareVersion>CD00</equip:firmwareVersion>
-     <equip:dateInstalled>2002-05-15T00:00Z</equip:dateInstalled>
-     <equip:dateRemoved>2003-01-09T00:00Z</equip:dateRemoved>
-   </gnssReceiver>
-   <gnssAntenna>
-     <equip:antennaType>ASH701945B_M</equip:antennaType>
-     <equip:serialNumber>CR519991867</equip:serialNumber>
-     <equip:antennaReferencePoint>BPA</equip:antennaReferencePoint>
-     <equip:marker-arpUpEcc.>0.0083</equip:marker-arpUpEcc.>
-     <equip:dateInstalled>2002-05-15T00:00Z</equip:dateInstalled>
-     <equip:dateRemoved>2004-09-29T00:00Z</equip:dateRemoved>
-     <equip:notes></equip:notes>
-   </gnssAntenna>

## XML and Geodesy at SOPAC

- Time Series Plotting
- GPS analysis input
- Historical equipment information
- Site motion model terms - apriori coords
- Phase center information
- GPS coordinate data submission/querying
- GML Observation Collections
- GML Filter Encoding
- GPS time series offsets

## XML and Geodesy: Conclusion

- SOPAC: support IGS/INDIGO via XML site log implementation
- Widely used in other fields
- Encapsulate, control, validate metadata
- Appeal to IT staffs