XMLReader

Beschreibung

Liest den XML-Inhalt und erstellt Datensatzobjekte. Datensätze werden in der zweiten Ebene der XML-Daten erwartet, eingebettet in ein umschließendes Wurzel-Tag.

Tags

parser, reader, record, xml

Eigenschaften

In der folgenden Liste sind die erforderlichen Eigenschaften mit einem Sternchen (*) gekennzeichnet. Andere Eigenschaften werden als optional betrachtet. Die Tabelle zeigt auch alle Standardwerte und ob eine Eigenschaft die NiFi Expression Language unterstützt.

Display Name (Anzeigename)

API-Name

Standardwert

Zugelassene Werte

Beschreibung

Date Format

Date Format

Gibt das Format an, das beim Lesen/Schreiben von Datumsfeldern verwendet werden soll. Wenn nicht anders angegeben, werden Datumsfelder als Anzahl der Millisekunden seit Epoche (Mitternacht, 1. Januar 1970 GMT) angenommen. Falls angegeben, muss der Wert dem Java-Format „java.time.format.DateTimeFormatter“ entsprechen (z. B. MM/dd/yyyy für einen zweistelligen Monat, gefolgt von einem zweistelligen Tag, gefolgt von einem vierstelligen Jahr, alle durch „/“ Zeichen getrennt, wie in 01/01/2017).

Time Format

Time Format

Gibt das Format an, das beim Lesen/Schreiben von Zeitfeldern verwendet werden soll. Wenn nicht anders angegeben, werden Zeitfelder als Anzahl der Millisekunden seit Epoche (Mitternacht, 1. Januar 1970 GMT) angenommen. Falls angegeben, muss der Wert dem Java-Format „java.time.format.DateTimeFormatter“ entsprechen (z. B. HH: mm:ss für eine zweistellige Stunde im 24-Stunden-Format, gefolgt von einer zweistelligen Minute, gefolgt von einer zweistelligen Sekunde, alle getrennt durch „:“-Zeichen, wie in 18:04:15).

Timestamp Format

Timestamp Format

Gibt das Format an, das beim Lesen/Schreiben von Zeitstempelfeldern verwendet werden soll. Wenn nicht anders angegeben wird, werden die Zeitstempelfelder als Anzahl der Millisekunden seit Epoche (Mitternacht, 1. Januar 1970 GMT) angenommen. Falls angegeben, muss der Wert dem Java-Format „java.time.format.DateTimeFormatter“ entsprechen (z. B. MM/dd/yyyy HH: mm:ss für einen zweistelligen Monat, gefolgt von einem zweistelligen Tag, gefolgt von einem vierstelligen Jahr, alle getrennt durch „/“-Zeichen; und dann gefolgt von einer zweistelligen Stunde im 24-Stunden-Format, gefolgt von einer zweistelligen Minute, gefolgt von einer zweistelligen Sekunde, alle getrennt durch „:“-Zeichen, wie in 01/01/2017 18:04:15).

Attribute Prefix

attribute_prefix

Wenn diese Eigenschaft gesetzt ist, wird dem Namen von Attributen ein Präfix vorangestellt, wenn sie einem Datensatz hinzugefügt werden.

Feldname für Inhalt

content_field_name

Wenn Tags mit Inhalt (z. B. <field>content</field>) als verschachtelte Datensätze im Schema definiert sind, wird der Name des Tags als Name für den Datensatz und der Wert dieser Eigenschaft als Name für das Feld verwendet. Wenn Tags mit Inhalt zusammen mit Attributen geparst werden sollen (z. B. <field attribute=“123“>content</field>), müssen sie als Datensätze definiert werden. In einem solchen Fall wird der Name des Tags als Name für den Datensatz und der Wert dieser Eigenschaft als Name für das Feld mit dem ursprünglichen Inhalt verwendet. Der Name des Attributs wird verwendet, um ein neues Datensatzfeld zu erstellen, dessen Inhalt der Wert des Attributs ist. Weitere Informationen finden Sie im Abschnitt „Weitere Details …“ in der Dokumentation des XMLReader-Controller-Dienstes.

XML-Attribute parsen

parse_xml_attributes

true

  • true

  • false

Wenn die „Schema Access Strategy“ „Infer Schema“ ist und diese Eigenschaft „true“ ist, werden XML-Attribute geparst und dem Datensatz als neue Felder hinzugefügt. Wenn das Schema abgeleitet wird, aber diese Eigenschaft „false“, ist, werden XML-Attribute und ihre Werte ignoriert.

Expect Records as Array *

record_format

false

  • false

  • true

  • Verwenden Sie das Attribut „xml.stream.is.array“

Diese Eigenschaft legt fest, ob der Leser erwartet, dass ein FlowFile aus einem einzelnen Datensatz oder einer Reihe von Datensätzen mit einem „Wrapper-Element“ besteht. Da XML keine Möglichkeit bietet, eine Reihe von XML-Dokumenten direkt aus einem Stream zu lesen, ist es üblich, viele XML-Dokumente zu kombinieren, indem man sie verkettet und dann den gesamten XML-Blob mit einem „Wrapper-Element“ umhüllt. Diese Eigenschaft legt fest, ob der Reader erwartet, dass ein FlowFile aus einem einzelnen Datensatz oder einer Reihe von Datensätzen mit einem „Wrapper-Element“ besteht, das ignoriert wird.

Schema Access Strategy *

schema-access-strategy

infer-schema

  • Eigenschaft „Schema Name“ verwenden

  • Eigenschaft „Schema Text“ verwenden

  • Schema Reference Reader

  • Infer Schema

Gibt an, wie das Schema abgerufen wird, das zur Interpretation der Daten verwendet werden soll.

Schema Branch

schema-branch

Gibt den Namen des Zweigs an, der beim Suchen des Schemas in der Eigenschaft „Schema Registry“ verwendet werden soll. Wenn die gewählte „Schema Registry“ keine Verzweigungen unterstützt, wird dieser Wert ignoriert.

Schema Inference Cache

schema-inference-cache

Gibt einen Schema-Cache an, der beim Ableiten des Schemas verwendet werden soll. Wenn nicht ausgefüllt, wird das Schema jedes Mal neu abgeleitet. Wenn jedoch ein Cache angegeben ist, wird zunächst der Cache konsultiert und wenn das entsprechende Schema gefunden wird, wird es verwendet, anstatt das Schema abzuleiten.

Schema Name

schema-name

${schema.name}

Gibt den Namen des Schemas an, das in der Eigenschaft Schema Registry gesucht werden soll.

Schema Reference Reader *

schema-referenz-reader

Dienstimplementierung, die für das Lesen von FlowFile-Attributen oder -Inhalten verantwortlich ist, um den Schema Reference Identifier zu ermitteln

Schema Registry

schema-registry

Gibt den Controller Service an, der für die Schema Registry verwendet werden soll

Schema Text

schema-text

${avro.schema}

Der Text eines Avro-formatierten Schemas

Schema Version

schema-version

Gibt die Version des Schemas an, die in der Schema Registry gesucht werden soll. Wenn nicht angegeben, wird die neueste Version des Schemas abgerufen.

Statusmanagement

Diese Komponente speichert keinen Status.

Eingeschränkt

Diese Komponente ist nicht eingeschränkt.

Hinweise zu Systemressourcen

Diese Komponente enthält keine Angaben zu den Systemressourcen.