MEF Output Formats

You can specify the MATRIXX Event File (MEF) output format as either element XML or compact MDC (CMDC). Use the print_data_container_file.py utility to change the output format.

MEF output formats include the following:
Note: You can use the print_data_container_file.py utility to change the output format of the MEF checkpoint file.

Element XML

Element XML represents each field as an XML element.

Element XML

The following code is an example of a MEF in Element XML format.

 <!-- MATRIXX Event File generated on Tue Apr 30 04:33:52 2019 UTC -->
<MtxEventCollection>
    <EventList>
<MtxPurchaseEvent>
    <OfferInfoArray>
        <MtxPurchaseEventOfferInfo>
            <PreActiveState>0</PreActiveState>
            <CatalogItemId>200003</CatalogItemId>
            <CatalogItemTemplateAttr>
                <MtxTemplateAttr/>
            </CatalogItemTemplateAttr>
            <OfferId>200003</OfferId>
            <OfferVersion>0</OfferVersion>
            <ResourceId>1</ResourceId>
            <StartTime>1-01-01T00:00:00.000000Z</StartTime>
            <EndTime>65535-12-31T23:59:59.999999Z</EndTime>
        </MtxPurchaseEventOfferInfo>
    </OfferInfoArray>
    <EventTypeArray>
        <value>4</value>
    </EventTypeArray>
    <InitiatorId>0:2:5:932</InitiatorId>
    <InitiatorExternalId>188</InitiatorExternalId>
    <Flags>0</Flags>
    <WalletId>0:2:5:933</WalletId>
    <WalletOwnerId>0:2:5:932</WalletOwnerId>
    <WalletOwnerExternalId>188</WalletOwnerExternalId>
    <EventTime>2009-12-01T00:00:00.000000Z</EventTime>
    <EventId>DRG0:2:52:2373</EventId>
    <DeleteCode>2</DeleteCode>
</MtxPurchaseEvent>
<MtxPurchaseEvent>
    <OfferInfoArray>
        <MtxPurchaseEventOfferInfo>
            <PreActiveState>0</PreActiveState>
            <CatalogItemId>200100</CatalogItemId>
            <CatalogItemTemplateAttr>
                <MtxTemplateAttr/>
            </CatalogItemTemplateAttr>
            <OfferId>200100</OfferId>
            <OfferVersion>0</OfferVersion>
            <ResourceId>2</ResourceId>
            <StartTime>1-01-01T00:00:00.000000Z</StartTime>
            <EndTime>65535-12-31T23:59:59.999999Z</EndTime>
        </MtxPurchaseEventOfferInfo>
    </OfferInfoArray>
    <EventTypeArray>
        <value>4</value>
    </EventTypeArray>
    <InitiatorId>0:2:5:932</InitiatorId>
    <InitiatorExternalId>188</InitiatorExternalId>
    <Flags>0</Flags>
    <WalletId>0:2:5:933</WalletId>
    <WalletOwnerId>0:2:5:932</WalletOwnerId>
    <WalletOwnerExternalId>188</WalletOwnerExternalId>
    <EventTime>2009-12-01T00:00:00.000000Z</EventTime>
    <EventId>DRG0:2:52:2378</EventId>
    <DeleteCode>2</DeleteCode></MtxPurchaseEvent><MtxPurchaseEvent>
    <OfferInfoArray>
        <MtxPurchaseEventOfferInfo>
            <PreActiveState>0</PreActiveState>
            <CatalogItemId>200001</CatalogItemId>
            <CatalogItemTemplateAttr>
                <MtxTemplateAttr/>
            </CatalogItemTemplateAttr>
            <OfferId>200001</OfferId>
            <OfferVersion>0</OfferVersion>
            <ResourceId>1</ResourceId>
            <StartTime>1-01-01T00:00:00.000000Z</StartTime>
            <EndTime>65535-12-31T23:59:59.999999Z</EndTime>
        </MtxPurchaseEventOfferInfo>
    </OfferInfoArray>
    <EventTypeArray>
        <value>4</value>
    </EventTypeArray>
    <InitiatorId>0:2:5:937</InitiatorId>
    <InitiatorExternalId>189</InitiatorExternalId>
    <Flags>0</Flags>
    <WalletId>0:2:5:938</WalletId>
    <WalletOwnerId>0:2:5:937</WalletOwnerId>
    <WalletOwnerExternalId>189</WalletOwnerExternalId>
    <EventTime>2009-12-01T00:00:00.000000Z</EventTime>
    <EventId>DRG0:2:52:2374</EventId>
    <DeleteCode>2</DeleteCode></MtxPurchaseEvent>
...

        </EventList>
</MtxEventCollection>
<!-- Total Event Count: 1000 --> 

Compact MDC

A compact MDC is represented on one line and uses the semantics described in Compact MDC Semantics.
Table 1. Compact MDC Semantics
Field Description
< Indicates the start of a DataContainer header. This specifies the type of DataContainer that follows.
> Indicates the end of a DataContainer header.
[ Indicates the start of a DataContainer or a Struct.
] Indicates the end of a DataContainer or a Struct.
, Used as a field separator.
{ Indicates the start of a list or an array.
} Indicates the end of a list or an array.
# Lines that start with a # are ignored.
,, Indicates that this field is 'not present'.

In addition, leading spaces and lines that are blank or empty are ignored.

The DataContainer header consists of six fields (for example, <1,3,0,417,4520,1>). Each field is separated by a comma.

A base container follows the sub-container. The entire sub-container is specified ending with a ']'. The base container then follows the ']' character. This is done serially, not nested.

Hex characters that are not printable are represented as "\xx" where xx is the hex value of the character. For example, a hex 0x01 is represented as \01.

Compact MDC

The following code is an example of a MEF in compact MDC format.

# MATRIXX Event File generated on Thu Mar 7
23:42:04 2019 UTC <1,0,1,715,5100,1>[]<1,9,0,626,5100,1>[{14}]
<1,23,0,208,5100,1>[0:2:5:3320,(3:665),,,0,0:2:5:3321,0:2:5:3320,(3:665),,,,,,2009-12-01T00:00:00.000000Z,,(14:DRG0:2:52:1329),,,,,2]
<1,0,1,715,5100,1>[]<1,9,0,626,5100,1>[{14}]
<1,23,0,208,5100,1>[,,0:2:5:3323,,0,,,,,,,,,2009-12-01T00:00:00.000000Z,,(14:DRG0:2:52:1330),,,,,2]
<1,0,1,715,5100,1>[]<1,9,0,626,5100,1>[{14}]
<1,23,0,208,5100,1>[,,0:2:5:3328,,0,,,,,,,,,2009-12-01T00:00:00.000000Z,,(14:DRG0:2:52:1332),,,,,2]...
<1,0,1,715,5100,1>[]<1,9,0,626,5100,1>[{14}]
<1,23,0,208,5100,1>[,,0:2:5:4996,,0,,,,,,,,,2009-12-01T00:00:00.000000Z,,(14:DRG0:2:52:1999),,,,,2]
<1,0,1,715,5100,1>[]<1,9,0,626,5100,1>[{14}]
<1,23,0,208,5100,1>[0:2:5:4998,(4:1000),,,0,0:2:5:4999,0:2:5:4998,(4:1000),,,,,,2009-12-01T00:00:00.000000Z,,(14:DRG0:2:52:2000),,,,,2]

...

# Total Event Count: 673

For information about configuring the MEF output format, see the discussion about MEF publication configuration in MATRIXX Configuration.