XMLReader¶
Description¶
Lit le contenu de XML et crée des objets d’enregistrement. Les enregistrements sont attendus dans le deuxième niveau de données de XML, intégrés dans une balise racine englobante.
Propriétés¶
Dans la liste ci-dessous, les propriétés requises sont signalées par un astérisque (*). Les autres propriétés sont considérées comme facultatives. La table indique également les valeurs par défaut et précise si une propriété prend en charge le langage d’expression NiFi.
Nom d’affichage |
Nom d’API |
Valeur par défaut |
Valeurs autorisées |
Description |
---|---|---|---|---|
Format de date |
Format de date |
Spécifie le format à utiliser lors de la lecture/écriture des champs de date. S’ils ne sont pas spécifiés, les champs Date seront considérés comme étant le nombre de millisecondes écoulées depuis l’époque (minuit, 1er janvier 1970 GMT). Si elle est spécifiée, la valeur doit correspondre au format Java java.time.format.DateTimeFormatter (par exemple, jj/MM/aaaa pour un mois à deux chiffres, suivi d’un jour à deux chiffres, suivi d’une année à quatre chiffres, tous séparés par des caractères “/”, comme dans 01/01/2017). |
||
Format de l’heure |
Format de l’heure |
Spécifie le format à utiliser lors de la lecture/écriture des champs Time. S’ils ne sont pas spécifiés, les champs Time seront considérés comme étant le nombre de millisecondes depuis l’époque (minuit, 1er janvier 1970 GMT). Si elle est spécifiée, la valeur doit correspondre au format Java java.time.format.DateTimeFormatter (par exemple, HH:mm:ss pour une heure à deux chiffres au format 24 heures, suivie d’une minute à deux chiffres, suivie d’une seconde à deux chiffres, le tout séparé par des caractères :, comme dans 18:04:15). |
||
Timestamp Format |
Timestamp Format |
Spécifie le format à utiliser lors de la lecture/écriture des champs horodatage. S’ils ne sont pas spécifiés, les champs d’horodatage seront considérés comme étant le nombre de millisecondes depuis l’époque (minuit, 1er janvier 1970 GMT). Si elle est spécifiée, la valeur doit correspondre au format Java java.time.format.DateTimeFormatter (par exemple, jj/MM/aaaa HH:mm:ss pour un mois à deux chiffres, suivi d’un jour à deux chiffres, suivi d’une année à quatre chiffres, tous séparés par des caractères / ; puis suivi d’une heure à deux chiffres au format 24 heures, suivie d’une minute à deux chiffres, suivie d’une seconde à deux chiffres, tous séparés par des caractères :, comme dans 01/01/2017 18:04:15). |
||
Préfixe de l’attribut |
attribute_prefix |
Si cette propriété est ensemble, le nom des attributs sera précédé d’un préfixe lorsqu’ils sont ajoutés à un enregistrement. |
||
Nom du champ pour le contenu |
content_field_name |
Si des balises avec contenu (par exemple, <field>content</field>) sont définies comme des enregistrements imbriqués dans le schéma, le nom de la balise sera utilisé comme nom de l’enregistrement et la valeur de cette propriété sera utilisée comme nom du champ. Si les balises avec un contenu doivent être analysées avec des attributs (par exemple, <field attribute= »123 »>content</field>), elles doivent être définies comme des enregistrements. Dans ce casse-tête, le nom de la balise sera utilisé comme nom pour l’enregistrement et la valeur de cette propriété sera utilisée comme nom pour le champ contenant le contenu original. Le nom de l’attribut sera utilisé pour créer un nouveau champ d’enregistrement dont le contenu sera la valeur de l’attribut. Pour plus d’informations, reportez-vous à la section Détails supplémentaires de la documentation du service du contrôleur XMLReader. |
||
Analyse des attributs XML |
parse_xml_attributes |
true |
|
Lorsque la stratégie d’accès au schéma est Inférer le schéma et que cette propriété est true, les attributs XML sont analysés et ajoutés à l’enregistrement en tant que nouveaux champs. Lorsque le schéma est déduit mais que cette propriété est false, les attributs XML et leurs valeurs sont ignorés. |
Attendez les enregistrements sous forme de tableau * |
record_format |
false |
|
Cette propriété définit si le lecteur s’attend à ce qu’un FlowFile soit constitué d’un seul enregistrement ou d’une série d’enregistrements avec un élément d’enveloppe. Comme XML ne fournit pas de moyen de lire directement une série de documents XML à partir d’un flux, il est courant de combiner plusieurs documents XML en les concaténant, puis en enveloppant l’ensemble du blob XML d’un élément d’enveloppe. Cette propriété indique si le lecteur s’attend à ce que le FlowFile soit constitué d’un seul enregistrement ou d’une série d’enregistrements accompagnés d’un élément d’enveloppe qui sera ignoré. |
Stratégie d’accès au schéma * |
schema-access-strategy |
infer-schema |
|
Indique comment obtenir le schéma à utiliser pour interpréter les données. |
Branche du schéma |
schema-branch |
Spécifie le nom de la branche à utiliser lors de la recherche du schéma dans la propriété Schema Registry. Si le registre de schémas choisi ne prend pas en charge la ramification, cette valeur sera ignorée. |
||
Cache d’inférence de schéma |
schema-inference-cache |
Spécifie un cache de schéma à utiliser lors de la déduction du schéma. S’il n’est pas renseigné, le schéma sera déduit à chaque fois. Toutefois, si un cache est spécifié, le cache sera d’abord consulté et si le schéma applicable peut être trouvé, il sera utilisé au lieu de déduire le schéma. |
||
Nom de schéma |
schema-name |
${schema.name} |
Spécifie le nom du schéma à rechercher dans la propriété Schema Registry |
|
Lecteur de référence de schéma * |
schema-reference-reader |
Mise en œuvre du service responsable de la lecture des attributs ou du contenu de FlowFile pour déterminer l’identifiant de référence du schéma |
||
Registre des schémas |
schema-registry |
Spécifie le Controller Service à utiliser pour le registre des schémas |
||
Texte du schéma |
schema-text |
${avro.schema} |
Le texte d’un schéma formaté par Avro |
|
Version du schéma |
schema-version |
Spécifie la version du schéma à rechercher dans le registre des schémas. Si elle n’est pas spécifiée, c’est la dernière version du schéma qui sera récupérée. |
Gestion de l’État¶
Ce composant ne stocke pas d’état.
Restreint¶
Cette composante n’est pas limitée.
Considérations relatives aux ressources du système¶
Ce composant ne précise pas les ressources du système à prendre en compte.