QuakeML
   HOME

TheInfoList



OR:

The Quake Markup Language (QuakeML) is a flexible, extensible and modular
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. T ...
representation of seismological data (e.g.
epicenter The epicenter, epicentre () or epicentrum in seismology is the point on the Earth's surface directly above a hypocenter or focus, the point where an earthquake or an underground explosion originates. Surface damage Before the instrumental pe ...
,
hypocenter In seismology, a hypocenter or hypocentre () is the point of origin of an earthquake or a subsurface nuclear explosion. A synonym is the focus of an earthquake. Earthquakes An earthquake's hypocenter is the position where the strain energy s ...
, magnitude) which is intended to cover a broad range of fields of application in modern
seismology Seismology (; from Ancient Greek σεισμός (''seismós'') meaning "earthquake" and -λογία (''-logía'') meaning "study of") is the scientific study of earthquakes and the propagation of elastic waves through the Earth or through other ...
. The flexible approach of QuakeML allows further extensions of the standard in order to represent
wave In physics, mathematics, and related fields, a wave is a propagating dynamic disturbance (change from equilibrium) of one or more quantities. Waves can be periodic, in which case those quantities oscillate repeatedly about an equilibrium (res ...
form data, macroseismic information,
probability density function In probability theory, a probability density function (PDF), or density of a continuous random variable, is a function whose value at any given sample (or point) in the sample space (the set of possible values taken by the random variable) can ...
s, slip distributions, shake maps, and others. QuakeML is an open standard and is developed by a distributed team in a transparent collaborative manner.


Development

QuakeML is developed in parallel with a
UML The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
representation of its data model. This allows an elaborate software development strategy which uses the UML class model together with a custom UML profile. The XML Schema (XSD) description is created automatically from the UML model with the help of tagged values, which describe the mapping from UML class attributes to XML representation. The UML/ XMI description can also be used as a basis for automated creation of a class library using code generators. Suitable programming languages are, e.g.,
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
,
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
, and
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
. In this approach, writing and reading QuakeML documents is equivalent to serializing/deserializing QuakeML objects to/from their
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. T ...
representation. A further possibility would be the serialization/deserialization to/from SQL for persistent storage in a
relational database A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
. The QuakeML language definition is supplemented by a concept to provide resource
metadata Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including: * Descriptive metadata – the descriptive ...
and facilitate metadata exchange between distributed data providers. For that purpose, QuakeML proposes a
URI Uri may refer to: Places * Canton of Uri, a canton in Switzerland * Úri, a village and commune in Hungary * Uri, Iran, a village in East Azerbaijan Province * Uri, Jammu and Kashmir, a town in India * Uri (island), an island off Malakula Islan ...
-based format for unique, location-independent identifiers of seismological resources which are assigned by approved naming authorities. In a later development stage, QuakeML will provide a RDF vocabulary for resource metadata description, covering the resource's identity, curation, content, temporal availability, data quality, and associated services. QuakeML proposes to set up a network of registry institutions which offer web services for resolving resource identifiers into corresponding RDF/XML metadata descriptions, and additionally provide means for resource discovery by offering services for searches against resource metadata.


Version 1.2

Version 1.2 is the latest stable version QuakeML. Schemas and other documentation for version 1.2 can be found here. This is the version that is used in results of event queries to
International Federation of Digital Seismograph Networks The International Federation of Digital Seismograph Networks, or FDSN, is a global organization consisting of groups that install and maintain digital, broadband seismic recorders either nationally or globally. Any organizations operating more tha ...
(FDSN) web services and is supported by data centers around the world, such as the European Seismic Portal.


Version 2.0

QuakeML 2.0 will be the next major version. QuakeML up to version 1.2 covered (only) a basic seismic event description, whereas from v2.0 many new thematic packages will be available, and are currently under development. Currently, the following packages are under development with new first-level elements (child elements of quakeml): *Basic Event Description (BED) *Basic Event Description - Real Time (BED-RT) *Borehole *Hydraulic *Macroseismic *Seismic Source *Site Characterization *Station Characterization *Strong Motion Helper packages that do not define first-level elements: *Basic Event Description Types *Common *Filter *Resource Metadata *Waveform


QuakePy tools

QuakePy is a
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
package designed as a set of tools for statistical analyses of seismological data encoded using QuakeML. It provides a library of classes for earthquake catalog handling and computations, and plot routines for visualizing the obtained results. QuakePy is developed in Python as a fully open-source library, and it is based on multiple other tools such as
GMT Greenwich Mean Time (GMT) is the mean solar time at the Royal Observatory in Greenwich, London, counted from midnight. At different times in the past, it has been calculated in different ways, including being calculated from noon; as a cons ...
. Although QuakePy avoids the use of any proprietary software, many tools for Python allow for a
MATLAB MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation ...
-like working environment, e.g.,
IPython IPython (Interactive Python) is a command shell for interactive computing in multiple programming languages, originally developed for the Python programming language, that offers introspection, rich media, shell syntax, tab completion, and histo ...
.


References

{{Reflist


External links


QuakeML homepage
Seismology Earthquakes XML markup languages Industry-specific XML-based standards Emergency management software