Group
An MDDL Group is a special Container that is intended for collecting properties to facilitate Inheritance and possibly Shorthand.
A Group is defined for every container and property within MDDL that has children. The Group is a child of the container or property with the name appended with "Group". For example, the "trade" container has a Group, as a child element, called "tradeGroup".
Simplified example WITHOUT use of Groups:
<ask>
<last>
<mdDecimal>10200.34</mdDecimal>
<currency>JPY</currency>
<dateTime>2007-03-01T16:00:00Z</dateTime>
</last>
<close>
<mdDecimal>102.20</mdDecimal>
<currency>EUR</currency>
<dateTime>2007-03-01T16:00:00Z</dateTime>
</close>
</ask>
Simplified example using Groups and Inheritance w/shorthand:
<ask>
<dateTime>2007-03-01T16:00:00Z</dateTime>
<askGroup>
<currency>JPY</currency>
<last>10200.34</last>
</askGroup>
<askGroup>
<currency>EUR</currency>
<close>102.20</close>
</askGroup>
</ask>
In this example, the 'dateTime' applies to all elements within the 'ask' container. However, the 'currency' of 'JPY' only applies to the last while a 'currency' of 'EUR' applies to the 'open'. Although this example only shows two properties ('last' and 'close') within the ask, one should realize there may be many properties that would be grouped together.









