Peter Gyori created NIFI-9831:
---------------------------------

             Summary: 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


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)

Reply via email to