Quakeml to Product Conversion (DRAFT)

« Back to User Guide

ANSS is still evaluating and planning the transition to Quakeml, and there is only limited support in production. This document represents the current mapping from Quakeml to Product, which may change.

What is Quakeml?

Quakeml is an emerging international standard XML representation for earthquake information. Quakeml will eventually be the preferred format for ANSS seismological data, and supersede the CUBE and EQXML formats. The XSD schema for Quakeml is available at https://quake.ethz.ch/quakeml/Documents.

How is QuakeML Converted to Products?

QuakeML is currently only converted to products using the EIDSInputWedge, with the gov.usgs.earthquake.event.EidsToQuakemlConverter parser class, using the rules described below.

Not all Quakeml messages have a product representation.

Comparison of QuakeML to Product format

QuakeML and Product formats differ significantly. QuakeML allows you to send many types of information in one message, and consumers must keep and merge all received QuakeML messages to determine the latest information of each type. The Product format requires each type of information to be a separate product, which is updated over time. While this can be more complicated when creating the information, it simplifies the organization of the resulting information.

ANSS Quakeml Extensions

ANSS uniquely identifies events to simplify cataloging, using two attributes. These attributes must be used on each event element, and optionally may be used on origin , magnitude , and momentTensor elements

anss:datasource
A 2 character network identifier
anss:eventid
An (up to) 8 character, alpha-numeric event identifier. event id must be unique from the data source .

ANSS Event ID Rules

  1. The same event id from a data source always refers to the same event.
  2. A different event id from a data source always refers to a different event.
  3. Two events from different data sources are considered to be the same event when
    1. The epicenter latitude and longitude of each event are within 100 kilometers.
    2. The epicenter time is within 16 seconds

QuakeML Product Attributes

Product source
quakeml/eventParameters/event[@anss:datasource]
Product type
These are the product types that can be produced from QuakeML, depending on the information that is present.
Product code
quakeml/eventParameters/event[@anss:datasource] + quakeml/eventParameters/event[@anss:eventid]
Product update time
The product update time comes from the most specific creationInfo/creationTime element.

For example: if a creationInfo element exists in the event element, and in the origin element, and a origin product is being created, the origin creationInfo is used.

Product status
When the event/type is "not existing", an origin type product with status "DELETE" is sent.

NOTE: there is currently no support for deleting other products. One option is to use evaluationStatus = rejected .

Product version
NOTE: The most recent product update time determines which information is used.

The version property is assigned based on the most specific creationInfo/version (see updateTime).

Product properties
Varies depending on the type of content. See below for more details.

Origin

origin type products represent a sources preferred location for an event. A source may include multiple locations, but the properties for the product are derived from the preferred information. Users can use this preferred information to find an origin product, and then must inspect the bundled QuakeML for less/non-preferred information.

An origin is considered preferred, and will be converted to a product, when:

  1. It is part of the first event element in the document.
  2. The event/prigin[@publicID] matches the event/preferredOriginID

All magnitude properties come from the preferred magnitude for the event, the magnitude element where event/magnitude[@publicID] matches event/preferredMagnitudeID

phase-data is identical to origin , except that it includes phase information. This is separate from regular origin products because phase-data is often large, and many consumers are not interested in this detailed information. The product is sent as phase-data , instead of origin , if the event element contains any pick elements.

Properties

latitude
origin/latitude/value , required.
longitude
origin/longitude/value , required.
eventtime
origin/time/value , required.
depth
origin/depth/value
event-type
event/type , lower cased. Default is "earthquake".
origin-source
creationInfo/agencyID , from the most specific creationInfo.
azimuthal-gap
origin/quality/azimuthalGap
horizontal-error
origin/originUncertainty/horizontalUncertainty
vertical-error
origin/depth/uncertainty
latitude-error
origin/latitude/uncertainty
longitude-error
origin/longitude/uncertainty
minimum-distance
origin/quality/minimumDistance
num-phases-used
origin/quality/usedPhaseCount
num-stations-used
origin/quality/usedStationCount
region
origin/region
review-status
When origin/evaluationMode ="manual", "reviewed"; Otherwise "automatic".
standard-error
origin/quality/standardError
magnitude
magnitude/mag/value
magnitude-source
creationInfo/agencyID
magnitude-type
magnitude/methodID
magnitude-azimuthal-gap
magnitude/azimuthalGap
magnitude-error
magnitude/mag/uncertainty
magnitude-num-stations-used
magnitude/stationCount

Contents

"quakeml.xml"
The entire quakeml element this product was created from.
"contents.xml"
A contents.xml that makes the "QuakeML.xml" file appear in the downloads list on the event page.

Focal Mechanism and Moment Tensor

focal-mechanism and moment-tensor and products are identical, except the focal-mechanism doesn't include any tensor properties. The product is sent as a moment-tensor instead of focal-mechanism , if the focalMechanims element contains a momentTensor element.

When momentTensor/methodID is present, the product code is event[@anss:datasource] + event[@anss:eventid] + momentTensor/methodID . When not present, the default product code is used (and thus only one moment-tensor or focal-mechanism product per event).

For display on the new event pages and comcat, only the 6 tensor parameters (for moment-tensor) or the 2 nodal planes (for focal-mechanism) are required for display. Other values are computed based on these values.

Properties

beachball-source
creationInfo/agencyID
derived-eventtime
event/origin[@publicID=focalMechanism/triggeringOriginID]/time/value
derived-latitude
event/origin[@publicID=focalMechanism/triggeringOriginID]/latitude/value
derived-longitude
event/origin[@publicID=focalMechanism/triggeringOriginID]/longitude/value
nodal-plane-1-dip
focalMechanism/nodalPlanes/nodalPlane1/dip/value
nodal-plane-1-slip
focalMechanism/nodalPlanes/nodalPlane1/rake/value
nodal-plane-1-strike
focalMechanism/nodalPlanes/nodalPlane1/strike/value
nodal-plane-2-dip
focalMechanism/nodalPlanes/nodalPlane2/dip/value
nodal-plane-2-slip
focalMechanism/nodalPlanes/nodalPlane2/rake/value
nodal-plane-2-strike
focalMechanism/nodalPlanes/nodalPlane2/strike/value
beachball-type
focalMechanism/momentTensor/methodID
scalar-moment
focalMechanism/momentTensor/scalarMoment
derived-eventtime
event/origin[@publicID=focalMechanism/momentTensor/derivedOriginID]/time/value
derived-latitude
event/origin[@publicID=focalMechanism/momentTensor/derivedOriginID]/latitude/value
derived-longitude
event/origin[@publicID=focalMechanism/momentTensor/derivedOriginID]/longitude/value
derived-depth
event/origin[@publicID=focalMechanism/momentTensor/derivedOriginID]/depth/value
percent-double-couple
focalMechanism/momentTensor/doubleCouple
tensor-mtt
focalMechanism/momentTensor/tensor/mtt/value
tensor-mpp
focalMechanism/momentTensor/tensor/mpp/value
tensor-mrr
focalMechanism/momentTensor/tensor/mrr/value
tensor-mtp
focalMechanism/momentTensor/tensor/mtp/value
tensor-mrp
focalMechanism/momentTensor/tensor/mrp/value
tensor-mrt
focalMechanism/momentTensor/tensor/mrt/value
derived-magnitude
event/magnitude[@publicID=momentTensor/momentMagnitudeID]/mag
derived-magnitude-type
event/magnitude[@publicID=momentTensor/momentMagnitudeID]/type

Contents

"QuakeML.xml"
The entire EQMessage element this product was created from.
"contents.xml"
A contents.xml that makes the "QuakeML.xml" file appear in the downloads list on the event page.