Example

Using PML 2007 and PML 2009, let’s assume that PML 2007 understands some current schema version while PML 2009 will understand some future extended version of the current schema.

PML 2007 knows how to handle connectors:

Now let's suppose that we desire to add a notion of labels on connectors:

Two alternate representations are required: PML 2009's schema has been extended to natively understand how to represent a label on a connector; however, PML 2007 does not. With PML 2007, we approximate this feature by representing the connector and label independently. The label is represented using a textbox. To keep the two elements together, for convenience sake, they are grouped.

Looking at the corresponding XML, PML 2007's markup looks as follows:

PML 2009 has been extended such that we may represent a label natively:

The final markup putting these choices together is as follows: