Wenn Acrolinx Elemente aus YAML-Dokumenten extrahiert, erkennt es Bereiche mit relevanten Informationen und weist ihnen Kontexte zu. Um festzulegen, was Acrolinx extrahiert, können Sie diese Kontexte auswählen und konfigurieren.
Beachten Sie, dass Sie das Content-Profil nicht so konfigurieren können, dass YAML-Kommentare extrahiert werden.
Anmerkung
Es ist auch möglich, JSON-Dokumente mit dem YAML Content-Profil zu prüfen, da JSON eine Subset von YAML ist. Wir empfehlen jedoch, dass Sie das Content-Profil für JSON verwenden. Acrolinx stellt Ihnen dieses und andere Content-Profile zur Verfügung, die Sie an Ihre Bedürfnisse anpassen können.
Es gibt 2 Arten von Kontexten – statische und dynamische.
Statische Kontexte sind dokumentenunabhängig. Acrolinx weist Teilen des extrahierten Textes die folgenden statischen Kontexte zu. Keine davon haben Attribute.
YAML_MAP
Verwenden Sie den Elementnamen YAML_MAP
, um anzuzeigen, dass sich der extrahierte Textausschnitt innerhalb einer Map
befindet.
So beziehen Sie YAML_MAP
ein:
-
Geben Sie
YAML_MAP
in Elementname ein. -
Wählen Sie im Filtermodus einschließen aus.
YAML_COMPLEX_NAME
Verwenden Sie den Elementnamen YAML_COMPLEX_NAME
, um anzuzeigen, dass sich der Textausschnitt innerhalb des Wertes einer Map
befindet und einen hierarchischen Schlüssel hat. Mit anderen Worten: Ein dynamischer Kontext kann ihn nicht berücksichtigen.
So schließen Sie YAML_COMPLEX_NAME
in Ihre Prüfung ein:
-
Geben Sie
YAML_COMPLEX_NAME
in Elementname ein. -
Wählen Sie im Filtermodus einschließen aus.
YAML_ITEM
Verwenden Sie den Elementnamen YAML_ITEM
, um anzuzeigen, dass sich der Textausschnitt in einem Element
innerhalb einer Sequenz
befindet.
So schließen Sie YAML_ITEM
in Ihre Prüfung ein:
-
Geben Sie
YAML_ITEM
in Elementname ein. -
Wählen Sie im Filtermodus einschließen aus.
YAML_SEQUENCE
Verwenden Sie den Elementnamen YAML_SEQUENCE
, um anzuzeigen, dass sich der extrahierte Textausschnitt innerhalb einer Sequenz
befindet.
So schließen Sie YAML_SEQUENCE
in Ihre Prüfung ein:
-
Geben Sie
YAML_SEQUENCE
in Elementname ein. -
Wählen Sie im Filtermodus einschließen aus.
Aus praktischer Sicht sind statische Kontexte nicht sehr nützlich. Dies liegt daran, dass statische Kontexte auf alle Inhalte in typischen YAML-Dokumenten abzielen. Deshalb sind sie meist nicht spezifisch genug.
Im folgenden Konfigurationsbeispiel z. B. ist die Information eine YAML_SEQUENCE
von YAML_ITEM
s einer YAML_MAP
. Wenn Sie einen dieser statischen Kontexte im Content-Profil angeben, wird er auf alle Werte im Beispiel verweisen. Was aber, wenn Sie nur an den Werten Job, Name und Skillset interessiert sind? Aus diesem Grund kann Acrolinx auch dynamische Kontexte extrahieren.
Für jeden Wert
einer Map
hat der extrahierte Texte einen Kontext, der:
-
den jeweiligen
Schlüssel
in der Map -
mit einem Attribut „name“ benennt, der auch der
Schlüssel
desWertes
ist.
Die einzigen Ausnahmen sind Schlüssel/Wert
-Paare mit hierarchischen Schlüsseln.
Sie können die Werte nur aus den Schlüssel/Wert
-Paaren extrahieren. Es gibt 3 Möglichkeiten, diese Werte für die Extraktion auszuwählen:
Geben Sie den Schlüssel als Elementnamen an
Um Namen zu extrahieren, können Sie den Elementnamen fullname
verwenden.
So schließen Sie z. B. fullname
in Ihre Prüfung ein:
-
Geben Sie
fullname
in Elementname ein. -
Wählen Sie im Filtermodus einschließen aus.
Geben Sie den Schlüssel als Namensattribut an
Wenn Sie einen Schlüssel mit einem Leerzeichen im Namen extrahieren möchten, z. B. „Skill Set“, müssen Sie das Namensattribut *name=""
verwenden. Dies verweist auf den Attributnamen, der mit dem Zwei-Wort-Schlüssel identisch ist.
So schließen Sie ein Zwei-Wort-Element wie „Skill Set“ in Ihre Prüfung ein:
-
Geben Sie unter Elementname
name="skill set"
ein. -
Wählen Sie im Filtermodus einschließen aus.
Geben Sie einen Schlüssel an, der eine hierarchische Struktur ist
Wenn der Schlüssel eine hierarchische Struktur anstelle einer Zeichenfolge ist, müssen Sie einen anderen Elementnamen angeben, um den Wert dieses Schlüsseltyps zu extrahieren.
So extrahieren Sie den Wert eines Schlüssels mit hierarchischer Struktur:
-
Geben Sie
YAML_COMPLEX_NAME
in Elementname ein. -
Wählen Sie im Filtermodus einschließen aus.
Da YAML_COMPLEX_NAME
ein statischer Kontext ist, zielt er auf alle Werte aller hierarchischen Schlüssel des YML-Dokuments ab.
Anmerkung
Standardmäßig extrahiert Acrolinx alle Nicht-Schlüsselflächen aus dem Dokument mit Satzumbrüchen dazwischen. Alle statischen Kontexte werden standardmäßig eingeschlossen. Der Standardumbruch ist Satz. Übergeordnete Maps oder Sequenzen verursachen keine zusätzlichen Umbrüche (bei YAML_SEQUENCE und YAML_MAP ist der konfigurierte Umbruch none).
In der Produktion sollten Sie zunächst alles ausschließen und nur bestimmte Schlüssel (dynamische Kontexte) einbeziehen.
Angenommen, Sie möchten ein Content-Profil für kundenbezogene YAML-Dokumente wie dieses konfigurieren:
employees.yaml
# Employee records - martin: id: sdzre-88-921 fullname: Martin Dev department: 344/2233 - B job: Developer skill set: - lisp - erlang age: 32
Ohne ein dediziertes Content-Profil würden all diese Textausschnitte Satzbrüche zwischen ihnen haben. Sie wollen Folgendes prüfen (und extrahieren):
-
Martin Dev
-
Developer
-
lisp
-
erlang
Das folgende Content-Profil erfüllt den Zweck:
Anmerkung
Sie können „Skill Set“ nicht über den Elementnamen prüfen (das Leerzeichen macht „Skill Set“ zu einem ungültigen Elementnamen). Stattdessen müssen Sie das Namensattribut verwenden. Deshalb ist in jedem statischen Kontext auch der entsprechende Name in einem Attribut „name“ enthalten.