The MeSHMerger software combines multiple translations of the Medical Subject Headings (MeSH) thesaurus into multilingual term lists.
The MeSH have a three level structure of descriptors, concepts and associated terms. A Descriptor is often broader than a single concept and so may consist of a class of concepts. Concepts, in turn, correspond to a class of terms which are synonymous with each other. If you want to learn more about the MeSH structure, please read the MeSH relations documentation of the NLM.
Each descriptor, concept and term has a unique ID. MeSHMerger aggregates the different term translations from different files under the appropriate concepts and descriptors and creates a single XML file with all term translations merged.
MeSH has been, at least partially, translated in various languages. The NLM maintains a special overview page for MeSH translations.
Before using MeSHMerger and its output, make sure you have the necessary rights for the translations.
To combine several MeSH translations just give the file names of the uncompressed XML files as parameters to MeSHMerger.
php mesh-merger.phar source/de/MeSH-2017.xml source/en/desc2017.xml source/fr/fredesc2017.xml
<?xml version="1.0" encoding="UTF-8"?>
<descriptors>
<descriptor id="D011595">
<concept id="M0018023">
<term id="T034238" lang="eng" preferred="true">
<string>Psychomotor Agitation</string>
</term>
<term id="T372239" lang="eng" preferred="false">
<string>Psychomotor Hyperactivity</string>
<permutation>Hyperactivity, Psychomotor</permutation>
</term>
<term id="T034237" lang="eng" preferred="false">
<string>Agitation, Psychomotor</string>
</term>
<term id="T034239" lang="eng" preferred="false">
<string>Restlessness</string>
</term>
<term id="T034240" lang="eng" preferred="false">
<string>Excitement, Psychomotor</string>
<permutation>Psychomotor Excitement</permutation>
</term>
<term id="T372238" lang="eng" preferred="false">
<string>Psychomotor Restlessness</string>
<permutation>Restlessness, Psychomotor</permutation>
</term>
<term id="ger0011271" lang="ger" preferred="true">
<string>Psychomotorische Agitiertheit</string>
</term>
<term id="ger0043352" lang="ger" preferred="false">
<string>Agitiertheit, psychomotorische</string>
</term>
<term id="ger0043401" lang="ger" preferred="false">
<string>Erregung, psychomotorische</string>
</term>
<term id="ger0043353" lang="ger" preferred="false">
<string>Rastlosigkeit</string>
</term>
<term id="fre0011223" lang="fre" preferred="true">
<string>Agitation psychomotrice</string>
</term>
<term id="fre0062872" lang="fre" preferred="false">
<string>Excitation psychomotrice</string>
</term>
<term id="fre0047534" lang="fre" preferred="false">
<string>Hyperactivité psychomotrice</string>
</term>
<term id="fre0047536" lang="fre" preferred="false">
<string>Incapacité à rester en place</string>
</term>
<term id="fre0047535" lang="fre" preferred="false">
<string>Instabilité psychomotrice</string>
</term>
</concept>
<concept id="M0018025">
<term id="T034241" lang="eng" preferred="true">
<string>Akathisia</string>
</term>
<term id="ger0038357" lang="ger" preferred="true">
<string>Akathisie</string>
</term>
<term id="fre0047532" lang="fre" preferred="true">
<string>Acathisie</string>
</term>
<term id="fre0062871" lang="fre" preferred="false">
<string>Acathésie</string>
</term>
<term id="fre0047533" lang="fre" preferred="false">
<string>Akathisie</string>
</term>
</concept>
</descriptor>
</descriptors
You can download a ready-to-use version of the MeSHMerger software on the publications page of the CLUBS project.
If you want to build MeSHMerger yourself, you will need a working Composer installation on your computer. Then follow these instructions:
-
Check out this repository
git clone https://github.com/clubs-project/MeSHMerger.git
-
Install dependencies via Composer
cd MeSHMerger composer install
-
Create PHAR archive
php -d phar.readonly=off vendor/bin/phar-composer build .