捕获属性时如何在AWS Glue中对嵌套的xml标签进行分类

时间:2018-08-29 14:23:00

标签: xml aws-glue

我有以下xml示例:

<ParentTag xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ID="68067108" ClientID="1" DocumentCreationDate="2018-04-10T00:00:05" DocumentVersion="9" EventClassID="1987" STBLogCreationDate="2018-04-09T11:38:59" SampleID="496" xsi:noNamespaceSchemaLocation="/opt/web/ams_proxy/webapps/ams_proxy/WEB-INF/amsXmlSchema_DTVPA_Version9.xsd">
    <Event EventTime="2018-04-09T11:41:02">
        <LiveViewEvent>
            <Channel channelObjectId="3062323">
                <Stream streamId="40" streamType="Video"/>
                <Stream streamId="41" streamType="Audio"/>
                <Stream streamId="65535" streamType="Data"/>
            </Channel>
        </LiveViewEvent>
    </Event>
</ParentTag>

我需要 ParentTag 中的ID, EventTime LiveViewEvent 数据(channelObject,视频,音频和数据)。我已经到了要在LiveViewEvent(作为结构)和 EventTime 中获取数据的地步,但似乎跳过了 ParentTag 中的属性。 也许我还应该提到还有其他类型的事件(除了 LiveViewEvent 之外,它们具有不同的数据,但我不需要它们。

我们非常感谢您的帮助。

谢谢

1 个答案:

答案 0 :(得分:1)

我认为唯一的方法是在AWS Glue控制台中创建一个行标记为“ ParentTag”的分类器,然后就可以使用struct和array数据类型选择必要的数据。