1. Introduction

1.1. Introducing StationXML

StationXML is an XML representation of metadata that describes the data collected by geophysical instrumentation.


metadata
  • Information that describes how/where/when data was collected

  • Data that describes data

XML = eXtensible Markup Language
  • Designed to be self-descriptive

  • Commonly used to distribute data over the internet


StationXML is defined by a schema that specifies the allowable format of StationXML files.

1.1.1. StationXML Example

Example of StationXML Show/Hide Code

<?xml version='1.0' encoding='UTF-8'?>
   <FDSNStationXML xmlns="http://www.fdsn.org/xml/station/1" schemaVersion="1.1">
      <Source>IRIS-DMC</Source>
      <Sender>IRIS-DMC</Sender>
      <Module>IRIS WEB SERVICE: fdsnws-station | version: 1.1.35</Module>
      <ModuleURI>http://service.iris.edu/fdsnws/station/1/query?starttime=1990-01-27T06&network=IU&level=response</ModuleURI>
      <Created>2018-11-08T14:57:56.000000Z</Created>
      <Network code="IU" restrictedStatus="open" startDate="1988-01-01T00:00:00.000000Z">
         <Description>Global Seismograph Network (GSN - IRIS/USGS)</Description>
         <TotalNumberStations>269</TotalNumberStations>
         <SelectedNumberStations>6</SelectedNumberStations>
         <Station code="ANMO" endDate="1995-07-14T00:00:00.000000Z" restrictedStatus="open" startDate="1989-08-29T00:00:00.000000Z">
            <Channel>
               <Response>
                  ...
               </Response>
            </Channel>
            <Channel>
               <Response>
                  ...
               </Response>
            </Channel>
         </Station>
         <Station code="CCM" endDate="1998-05-26T00:00:00.000000Z" restrictedStatus="open" startDate="1989-08-29T00:00:00.000000Z">
         </Station>
      </Network>
   </FDSNStationXML>

Note that each XML element must have a start tag (e.g., <Station>) and an end tag (</Station>) and the element hierarchy must be maintained (e.g., a <Channel> may not exist outside of a <Station> and a <Station> may not exist outside of a <Network>, etc.).

1.1.2. The FDSN and StationXML schema

StationXML was developed through the International Federation of Digital Seismograph Networks (FDSN) to provide a standardized format for geophysical metadata.

Notice that the example StationXML excerpt above contains the following line:

<FDSNStationXML xmlns="http://www.fdsn.org/xml/station/1" schemaVersion="1.1">

This specifies the location and version of the schema to which the StationXML example must conform.

The FDSN maintains all versions of the StationXML schema at:

For instance, at the time of this writing, the latest schema version is v1.1 and is located at:

1.2. How This Documentation is Organized

This documentation has 5 parts:

  1. This introduction

  2. StationXML Reference - Over time, once users have absorbed the other parts of the documentation, it is expected that this reference section will be the most frequently used. The reference section is auto-generated directly from the FDSN schema so that it should always be in sync with the schema. The reference itself is broken out by the 5 levels of response detail:

    • FDSNStationXML

    • Network

    • Station

    • Channel

    • Response

  3. Specifying and using response information - In this section you will find theory and examples to help you create instrument responses for your own stations.

  4. StationXML tools - contains examples of 3rd party tools available to help users create and edit StationXML files. This is expected to be a fluid page that changes as new tools become available and older tools are deprecated.

  5. Appendices - In here you will find more technical details on specific parts of StationXML and metadata. For instance, the first section, Mapping SEED to StationXML, is meant to be used as a reference to help users migrate their SEED format metadata to StationXML

1.3. Some History - SEED

For three decades, the Standard for the Exchange of Earthquake Data (SEED) was the standard format for archiving and distributing metadata within the seismological community. Once representing file volumes binding metadata to data, a provision was later developed that allowed SEED metadata to stand on its own and was given the designation ‘dataless SEED’.

StationXML was developed through the FDSN (International Federation of Digital Seismograph Networks) as a replacement and extension of the SEED standard.

The purpose of the FDSN StationXML schema (fdsn-station.xsd) is to define an XML representation of the most important and commonly used structures of SEED 2.4 metadata with enhancements.

The goal of this document is to allow mapping between SEED 2.4 dataless SEED volumes and the StationXML schema with as little transformation or loss of information as possible, while at the same time simplifying station metadata representation when possible. Also, content and clarification has been added where lacking in the SEED standard.

1.4. ChangeLog

History of changes to FDSN schema

Changes from version 1.0 to 1.1 (2019-5-3)
(Edited 2019-12-18 for small clarifications)

* Add (persistent) <Identifier> element to all base nodes (Network, Station, Channel)

* Unify response elements, allow "number" and disallow "unit" attribute to <Numerator> and <Denominator>

* Allow <CreationDate> to be optional

* Use xs:double for <ApproximationLowerBound>, <ApproximationUpperBound> and <MaximumError>

* Include data availability elements described in the fdsn-station+availability-1.0.xsd extension schema as optional elements of the main schema

* Remove <StorageFormat> from <Channel>

* Limit each <Operator> to a single <Agency>

* Allow more than a single <Equipment> occurrence in <Channel>, same as in <Station>

* Allow <Operator> at the <Network> level, same as in <Station>

* Add "sourceID" attribute, with URI value, to the base node type for <Network>,<Station>,<Channel>

* Do not require and disallow <StageGain> and <Decimation> for <Polynomial> response stages

* Add "measurementMethod" attribute to "uncertaintyDouble" attribute group used by azimuth, dip, distance, latitude, longitude, elevation, etc. types

* Add <WaterLevel> within <Station> and <Channel>

* Add "subject" attribute to <Comment> to allow relating comments, make "id" attribute optional.