AIXM 5.1 Business Rules
AIXM 5.1 (Aeronautical Information Exchange Model) is designed to enable the management and distribution of Aeronautical Information in digital format. It is currently the most complex model available in the world, with more than 900 classes, including referential data. By taking advantages of existing and emerging information engineering standards and supporting current and future system requirements, this version is a quantum leap compared to previous versions. AIXM 5.1 major tenets are an exhaustive temporality model and an alignment with ISO standards for geospatial information, including the use of the Geography Markup Language (GML).
As more and more existing systems are migrating to this latest official version, we’ll see an increasing need for data validation in the next few years. While the UML and XSD schemas mainly take care of technical data validation there’s an important need for supplementary business rules, allowing expressing more complex validation constraints.
This project’s main objectives were to express those complex business rules in plain English by following an international standard for rules writing (SBVR: Semantics of Business Vocabulary and Business Rules) defined by the Object Management Group (OMG) and, as a proof of concept, implement them using the ISO standard Schematron language.
As a result of the project work, more than 1,200 rules have already been expressed and validated and more than 800 have been implemented in Schematron code, together with a comprehensive set of test data.
Technologies:
GIDPlus Framework (Java/Java EE, Struts2, Spring, Hibernate, Velocity, XHTML/CSS/JavaScript, Ajax, jQuery, ExtJS, Jakarta POI, Apache Tomcat, LDAP, Eclipse, Oracle 10g, Maven, Excel, XML, GML, Schematron.
General Tasks:
- Develop an intuitive and user-friendly Business Rules Manager Web Application allowing aeronautical experts, business analysts and developers to provide and export business rules sets to Excel and AIXM Rule Checker tool (ARC).
- Create and build a generic tool for extracting rules patterns and generating multiple rule instances based on a dynamic set of variables. This drastically increased productivity and the number of rules created while allowing the lowest maintenance costs of the rules sets.
- Develop a set of business rules in SBVR and Schematron for AIXM 5.1 based on: existing AIXM 4.5 business rules, official ICAO documents, AIXM 5.1 new concepts like temporality and others, AIXM GML Profile...
Generic rules: rules that apply in more than one context, thus allowing to reduce the number of rules. For instance, rules on ElevatedPoints apply each time a feature has an ElevatedPoint. Using Generic rules avoids writing one rule for each feature where the ElevatedPoint occurs.
Templates: parameterized rules used to speed up rule writing. A templates allows replacing several rules having the same structure by one rule model plus a list of parameter sets. Each parameter set applied to the template allows generating one instance or actual rule. For instance, GML Profile could be implemented by about 100 rules. But it can also be implemented by one template and the list of 100 attributes contained in the profile. This is faster and more compact.
Excel sheet: the Excel sheet generated from the rules database contains one row per rule, including instances generated using templates. The sheet also features a macro to generate a rules file for ARC based on rules which have a Schematron text. Basically, a rule is represented by a name, an SBVR compliant text, a Schematron text when available, as well as other technical data like the origin of the rule, the Schematron context, the category of rule and level of error when rule is not respected.
