FOML is an expressive logic rule language that supports object modeling, analysis, and inference. It naturally supports model-level activities, such as constraints (extending UML diagrams), dynamic compositional modeling, analysis and reasoning about models, model testing, design pattern modeling, specification of Domain Specific Modeling Languages, and meta-modeling.
FOML can reason about:
1. The model meta-data (meta-model level reasoning, or syntax reasoning)
2. Data level: reason about...