You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Peter Turcsanyi (Jira)" <ji...@apache.org> on 2022/04/05 13:26:00 UTC

[jira] [Updated] (NIFI-9831) XMLReader adds extra XML element to the schema if the input contains XML attribute

     [ https://issues.apache.org/jira/browse/NIFI-9831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Peter Turcsanyi updated NIFI-9831:
----------------------------------
    Fix Version/s: 1.17.0
       Resolution: Fixed
           Status: Resolved  (was: Patch Available)

> XMLReader adds extra XML element to the schema if the input contains XML attribute
> ----------------------------------------------------------------------------------
>
>                 Key: NIFI-9831
>                 URL: https://issues.apache.org/jira/browse/NIFI-9831
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>            Reporter: Peter Gyori
>            Assignee: Peter Gyori
>            Priority: Major
>              Labels: inference, reader, schema, xml
>             Fix For: 1.17.0
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Let's use a ConvertRecord processor with an XMLReader to process XML documents. Let's set the reader's 'Schema Access Strategy' property to 'Infer Schema'. The processor can be configured with any writer, we just need to make sure the record schema is written in an attribute to the outgoing flowfile.
> XMLReader controller service settings:
>  * Schema Access Strategy: Infer Schema
>  * Expect Records as Array: false
> ConvertRecord processor settings:
>  * Record Reader: XMLReader
>  * Record Writer: any writer with _Schema Write Strategy: Set 'avro.schema' Attribute_ and _Schema Access Strategy: Inherit Record Schema_
> Input data:
> {code:java}
> <record>
>   <num>123</num>
>   <software favorite="true">Apache NiFi</software>
> </record>{code}
> Output schema:
> {code:java}
> {
>     "type": "record",
>     "name": "nifiRecord",
>     "namespace": "org.apache.nifi",
>     "fields": [
>         {
>             "name": "num",
>             "type": [
>                 "null",
>                 "int"
>             ]
>         },
>         {
>             "name": "software",
>             "type": [
>                 "null",
>                 {
>                     "type": "record",
>                     "name": "softwareType",
>                     "fields": [
>                         {
>                             "name": "favorite",
>                             "type": [
>                                 "null",
>                                 "boolean"
>                             ]
>                         },
>                         {
>                             "name": "value",
>                             "type": [
>                                 "null",
>                                 "string"
>                             ]
>                         }
>                     ]
>                 }
>             ]
>         },
>         {
>             "name": "favorite",
>             "type": [
>                 "null",
>                 "boolean"
>             ]
>         }
>     ]
> }{code}
> In the output schema the record/favorite element is unexpected.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)