Heart of Gold - Introduction

The Heart of Gold is a middleware architecture for the integration of deep and shallow natural language processing components. It provides a uniform and flexible infrastructure for building applications that use Robust Minimal Recursion Semantics (RMRS) and/or general XML standoff annotation produced by natural language processing components.

The main purpose Heart of Gold was developed for is integration of various shallow natural language processors with the highly efficient HPSG parser PET in order to increase robustness of HPSG grammars for various languages such as English, German, Japanese, Greek and Norwegian. HPSG grammars can be developed with LKB, compiled to a binary grammar image, and at runtime executed by PET within the Heart of Gold.

Although the focus of Heart of Gold is deep-shallow integration, the framework itself is generic and hence could also be used to, e.g., annotate corpora automatically and multi-dimensionally, combine multiple purely shallow systems on XML basis, or to integrate other deep parsers.

The Heart of Gold has been developed under the wings of the EU-funded project DeepThought and the BMBF-funded projects Quetal, HyLaP and and in the context of the DELPH-IN collaboration.

The core middleware architecture (and also the PET system) is available under an LGPL open source license. For details, see the License section. However, some of the components for which we provide adapters are only available for research purposes or have their own licenses different from LGPL.

Further information can be obtained by clicking on the menu items on the left and right.


Python/Mozilla-based GUI
Python/Mozilla-based GUI (sample screenshot)

DMRS parsing result
DMRS parsing result for the sentence "Mike Lynch says he was blindsided by a public relations onslaught from Hewlett-Packard that seemed unrelated to the substance of fraud claims about his firm."

Heart of Gold middleware architecture
Heart of Gold middleware architecture

Sample Configurations for German, English and Japanese hybrid workflows
Sample Configurations for German, English and Japanese hybrid workflows