OpenMath is the name of a
markup language
Markup language refers to a text-encoding system consisting of a set of symbols inserted in a text document to control its structure, formatting, or the relationship between its parts. Markup is often used to control the display of the document ...
for specifying the meaning of
mathematical
Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
formulae
In science, a formula is a concise way of expressing information symbolically, as in a mathematical formula or a ''chemical formula''. The informal use of the term ''formula'' in science refers to the general construct of a relationship betwee ...
. Among other things, it can be used to complement
MathML
Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
, a standard which mainly focuses on the presentation of formulae, with information about their semantic meaning. OpenMath can be encoded in
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 ...
or in a binary format.
Coverage
OpenMath consists of the definition of "OpenMath Objects", which is an abstract datatype for describing the logical structure of a mathematical formula and the definition of "OpenMath Content Dictionaries", or collections of names for mathematical concepts. The names available from the latter type of collections are specifically intended for use in extending MathML, and conversely, a basic set of such "Content Dictionaries" has been designed to be compatible with the small set of mathematical concepts defined in Content MathML, the non-presentational subset of MathML.
History
OpenMath has been developed in a long series of workshops and (mostly European) research projects that began in 1993 and continues through today. The OpenMath 1.0 Standard was released in February 2000, and revised as OpenMath 1.1 in October 2002. Two years later, the OpenMath 2.0 Standard was released in June 2004. OpenMath 1 fixed the basic language architecture, while OpenMath2 brought better XML integration, structure sharing and liberalized the notion of OpenMath Content dictionaries.
OpenMath Society
The OpenMath Effort is governed by the OpenMath Society, based in
Helsinki
Helsinki ( or ; ; sv, Helsingfors, ) is the Capital city, capital, primate city, primate, and List of cities and towns in Finland, most populous city of Finland. Located on the shore of the Gulf of Finland, it is the seat of the region of U ...
,
Finland
Finland ( fi, Suomi ; sv, Finland ), officially the Republic of Finland (; ), is a Nordic country in Northern Europe. It shares land borders with Sweden to the northwest, Norway to the north, and Russia to the east, with the Gulf of B ...
. The Society brings together tool builders, software suppliers, publishers and authors. Membership is by invitation of the Societies Executive Committee, which welcomes self-nominations of individuals who have worked on OpenMath-related issues in research or application. As of 2007,
Michael Kohlhase
Michael Kohlhase (born 13 September 1964, in Erlangen) is a Germans, German computer scientist and professor at University of Erlangen–Nuremberg, where he is head of the KWARC research group (Knowledge Adaptation and Reasoning for Content).
Ac ...
is president of the OpenMath society. He succeeded Arjeh M. Cohen, who was the first president.
Example
The well-known
quadratic formula
In elementary algebra, the quadratic formula is a formula that provides the solution(s) to a quadratic equation. There are other ways of solving a quadratic equation instead of using the quadratic formula, such as factoring (direct factoring, gr ...
:
:
would be marked up like this in OpenMath (the representation is an expression tree made up from functional elements like for function application or for variables):
2
4
2
In the expression tree above symbols—i.e. elements like —stand for mathematical functions that are applied to sibling expressions in an which are interpreted as arguments. The element is a generic extension element that means whatever is specified in the content dictionary referred to in the attribute (this document can be found at the URI specified in the innermost attribute dominating the respective element. In the example above, all symbols come from the content dictionary for arithmetics (, see below), except for the , which comes from a non-standard place, hence the attribute here.
OpenMath Content Dictionaries
Content Dictionaries are structured XML documents that define mathematical symbols that can be referred to by
OMS elements in OpenMath Objects. The OpenMath 2 standard does not prescribe a canonical encoding for content dictionaries, but only requires an infrastructure sufficient for unique referencing in
OMS elements. OpenMath provides a very basic XML encoding that meets these requirements, and a set of specific content dictionaries for some areas of mathematics, in particular covering the K-14 fragment covered by content MathML.
For more richly structured content dictionaries (and generally for arbitrary mathematical documents) the
OMDoc
OMDoc (Open Mathematical Documents) is a semantic markup format for mathematical documents. While MathML only covers mathematical formulae and the related OpenMath standard only supports formulae and “content dictionaries” containing definitio ...
format extends OpenMath by a “statement level” (including structures like definitions, theorems, proofs and examples, as well as means for interrelating them) and a “theory level”, where a theory is a collection of several contextually related statements. OMDoc's theories are designed to be compatible to OpenMath content dictionaries, but they can also be set into inheritance and import relations.
Criticism
OpenMath is criticised for being inadequate for general mathematics, exposing not enough formal precision to capture the intricacies of numerics, lacking a proof-of-concept and as an inferior technology to already established approaches of encoding mathematical semantics, amongst other presumed shortcomings.
See also
*
List of document markup languages
The following is a list of document markup languages. You may also find the List of markup languages of interest.
Well-known document markup languages
* HyperText Markup Language (HTML) – the original markup language that was defined as a part o ...
*
Comparison of document markup languages The following tables compare general and technical information for a number of document markup languages. Please see the individual markup languages' articles for further information.
General information
Basic general information about the marku ...
*
MathML
Mathematical Markup Language (MathML) is a mathematical markup language, an application of XML for describing mathematical notations and capturing both its structure and content. It aims at integrating mathematical formulae into World Wide Web ...
*
OMDoc
OMDoc (Open Mathematical Documents) is a semantic markup format for mathematical documents. While MathML only covers mathematical formulae and the related OpenMath standard only supports formulae and “content dictionaries” containing definitio ...
*
TeX
Tex may refer to:
People and fictional characters
* Tex (nickname), a list of people and fictional characters with the nickname
* Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr.
Entertainment
* ''Tex'', the Italian ...
References
External links
*
*
Standard definition*
Content Dictionaries
{{Document markup languages
Markup languages
Mathematical markup languages
XML-based standards