Bx Examples Repository

Title: Split cyclic inheritance

Version: 0.1 0.x for unreviewed examples.

Type: Precise


(This is a placeholder for an example from Dagstuhl.) This is a simple example of where several models, each individually conforming to the same metamodel and constraints, may nevertheless combine to give a full model that does not. Further, any pair combines to give a conformant model.

A thumbnail description of the example, not more than two or three sentences; might include a brief summary of the example and/or a brief reason for its inclusion in the repository (“demonstrates [some interesting point]” for example).


All models in this example comprise named classes connected by inheritance, with the constraint that cycles in the inheritance relation are not allowed.

Three models show: B inheriting from A; C inheriting from B; A inheriting from C.

Descriptions of the models, possibly with (formal) expressions of their meta-models. (We use the term “model”, and “meta-model” inclusively: any appropriately precise description of the information sources being transformed is acceptable.)


The obvious consistency relations are: models are consistent if, when they are combined, the combination still conforms to the metamodel (with the acyclicity constraint).

Description of the consistency relationship between models. This should at least be in natural language, but may be augmented by formal expression in some language cognate with that of the meta-models.

Consistency Restoration

not discussed in this example

Explain in which of the typically many possible ways inconsistencies are to be repaired. May be divided into separate descriptions of forward and backward restoration.


Origin, utility, interest, representativeness, related examples in the literature, …

References [optional section]

Bibliographic data for the paper or papers from which the example is taken, or where it is discussed, if applicable.


Perdita Stevens typing an example by Zinovy Diskin

Contributing author(s) of the example to the repository.


We intend that examples remain provisional (version 0.x) until reviewed (and approved, if necessary after modification) by other members of the wiki. In the interest of traceability and credit, such reviewers are identified here.


This is where any member of the wiki can comment.

Artefacts [optional section]

Formal descriptions, perhaps downloadable code, example inputs and outputs, virtual machine instances, diagrams…
Unless otherwise stated, the content of this page is licensed under GNU Free Documentation License.