Skip to content

Morphologische Analyse


Beispiel

php
use App\ServiceClasses\VocabAnalysis\FormAnalysator;

$config = [
    'analysis_method' => 'default',
    'analysis_form_as_lowercase' => true,
    'analysis_show_pos' => true,
    'analysis_show_morpho' => true,
    'analysis_show_bedeutungen' => true,
    'analysis_vocab_scope_id' => 23
    'analysis_operator' => 'in'
];


$VocabScope = VocabScope::find($config["analysis_vocab_scope_id"]);

$formAnalysator = new FormAnalysator('amavit', $config);
$formAnalysator->analyze();
$formAnalysator= $formAnalysator->applyScope($VocabScope, $config['analysis_operator']);

// Vollständige Analyse statt nur Lemmata: true
// JSON-serialisierter String: true
$result = $formAnalysator->get(true, true);

In diesem Beispiel wird die lateinische Form "amavit" analysiert. Die Konfiguration besagt, dass die Analyse in Kleinbuchstaben normiert werden soll und die Wortart, die morphologische Analyse sowie die Bedeutungen angezeigt werden sollen.
Es wird außerdem ein sogenannter VocabScope, ein Bereich innerhalb oder außerhalb dessen die Vokabelsuche durchgeführt wird, übergeben, Die Methode applyScope()funktioniert wie ein Filter, der auf die allgemeine Analyse angewandt wird.
Nach der Analyse wird das Ergebnis als serialisiertes FormAnalysis-Objekt zurückgegeben.

Rückgabewert

php
{
  "Form": "amavit",
  "config": {
    "show_pos": true,
    "show_morpho": true,
    "show_bedeutungen": true,
    "show_accepted_reading": true
  },
  "Lemmata": [
    {
      "id": "460",
      "lemma": "amare",
      "info": ", amo, amavi, amatum",
      "pos": "verb",
      "morpho": "[\"v3sria---\"]",
      "bedeutung": "lieben, mögen",
      "is_accepted_reading": false
    }
  ],
  "Format": "hermeneusv3"
}