ilios/mesh-parser

用于从XML中提取MeSH描述符的PHP库。

v3.0.0 2024-02-14 00:04 UTC

README

此PHP代码库提供从指定的XML文件中提取医学主题词(MeSH)描述符和相关数据的工具。

它期望其输入符合2023或2024年的MeSH DTDs

安装

使用composer将此库添加到您的项目中。

composer require ilios/mesh-parser

使用方法

实例化\Ilios\MeSH\Parser,并使用指向有效的MeSH描述符XML文件的URI调用其parse()方法。
此方法调用将返回一个\Ilios\MeSH\Model\DescriptorSet实例;这是进入描述符数据模型对象表示的入口点。
使用此对象及其子组件的getter方法遍历和处理此模型。

示例

<?php

require __DIR__ . '/vendor/autoload.php';

// provide a URL or a local file path.
//$uri = 'https://nlmpubs.nlm.nih.gov/projects/mesh/MESH_FILES/xmlmesh/desc2024.xml';
$uri = __DIR__ . '/desc2024.xml';

// instantiate the parser and parse the input.
$parser = new \Ilios\MeSH\Parser();
$set = $parser->parse($uri);

// process parsed data, e.g.
$descriptor = $set->findDescriptorByUi('D000001');
echo "Descriptor ID (Name): {$descriptor->getUi()} ({$descriptor->getName()})\n";
$concepts = $descriptor->getConcepts();
foreach($concepts as $concept) {
    echo "- Concept ID (Name): {$concept->getUi()} ({$concept->getName()})\n";
    $terms = $concept->getTerms();
    foreach ($terms as $term) {
        // ...
    }
}