...
- as an XML file, which preserves the information about "templates", which are used in the definition of the majority of the rules. The XML format is intended to be used for automating the development of data validation services, which could generate code directly from the SBVR structured rules and templates
as a table, in HTML Excel format. which is created by converting the original XML file into HTML . This can also be imported in Excel, in order to facilitate the transition to the new syntax, as the previous versions have been published only in Excel format. Also, the Excel format is more convenient for human used, as it allows sorting and filtering of the rulesand importing in Excel.
Info | ||
---|---|---|
| ||
In case of discrepancies between the XML and the Excel version, the XML version should be considered as the authoritative version. |
XML file
Warning |
---|
This is not the latest version. A new "context" element is exported, containing the mapping of the rule to the new grammar. Also, the <sbvr> element does no longer allow complex content in order to facilitate the detection of missing SBVR tags. A new <text> element will be used for free text in SBVR. |
The new XML export structure follows the schema defined in the AIXM-BR-SBVR.XSD file, which matches with the following structure:
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<?xml version="1.0" encoding="UTF-8"?> <AIXM-BR-SBVR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" criteriaAIXMversion="5.1.1" criteriaProfile="eEAD:Warning, eEAD:Error" exportedAt="2023-07-31T12:56:35.834774Z" xsi:noNamespaceSchemaLocation="AIXM-BR-SBVR.xsd"> <rule uid="AIXM-5.1.1_RULE-1C9C38"> <profiles> <profile> <name>eEAD</name> <level>Error</level> </profile> </profiles> <name>Minimal feature properties for DME</name> <aixm_class>DME</aixm_class> <aixm_attributes>channel, ghostFrequency</aixm_attributes> <aixm_association/> <sbvr> <keyword>It is prohibited that</keyword> <noun_concept>DMETimeSlice</noun_concept> <verb_concept>has</verb_concept> <noun_concept>channel</noun_concept> <keyword>value unspecified</keyword> <keyword>and</keyword> <noun_concept>DMETimeSlice</noun_concept> <verb_concept>has</verb_concept> <noun_concept>ghostFrequency</noun_concept> <keyword>value unspecified</keyword> </sbvr> <comments>Each DME must have either channel or ghost frequency</comments> <diagnostics>Found DME with neither channel not ghorstFrequency assigned values. Backwards mapping to AIXM 4.5 is impossible.</diagnostics> <timeslice>baseline outside delta, snapshot, set of snapshots</timeslice> <category>Minimal data rule</category> <source>EAD</source> <reference>EAD</reference> <context>It is prohibited that DV and DV</context> <remarks/> </rule> <template uid="C6F98"> <profiles> <profile> <name>eEAD</name> <level>Error</level> </profile> </profiles> <name>Unique AIXM 4.5 natural key for ${feature} - attribute and association</name> <aixm_class>${feature}</aixm_class> <aixm_attributes>${property}</aixm_attributes> <aixm_association>${association}</aixm_association> <sbvr> <keyword>It is prohibited that</keyword> <noun_concept>${feature}[1]</noun_concept> <verb_concept>has</verb_concept> <noun_concept>timeslice.${feature}TimeSlice.${property}</noun_concept> <keyword>value</keyword> <keyword>equal-to</keyword> <noun_concept>${feature}[2].timeslice.${feature}TimeSlice.${property}</noun_concept> <keyword>value</keyword> <keyword>and</keyword> <noun_concept>${feature}[1].timeslice.${feature}TimeSlice.${role}@xlink:href</noun_concept> <verb_concept>references-to</verb_concept> <noun_concept>${parent_feature}[3]</noun_concept> <keyword>and</keyword> <noun_concept>${feature}[2]timeslice.${feature}TimeSlice.${role}@xlink:href</noun_concept> <verb_concept>references-to</verb_concept> <noun_concept>${parent_feature}[3]</noun_concept> </sbvr> <comments>There cannot exists two different ${feature} that have identical values for ${property} and ${association} same ${parent_feature}</comments> <diagnostics>Found two different ${feature} that have identical values for ${property} and ${association} same ${parent_feature}. Backwards mapping to AIXM 4.5 is impossible.</diagnostics> <timeslice>set of snapshots</timeslice> <category>Standard (ICAO, industry, etc.)</category> <source>AIXM 4.5</source> <reference>AIXM 4.5 Uid</reference> <context>It is prohibited that VVV and RF and RF</context> <remarks>Note that "references-to" is used instead of comparing directly the values of the two xlink:href attributes in order to also cover the case when different coding (internal versus abstract) is used for the two references. Note that "parent_feature" has suffix "[3]" in order to highlight that it is the same occurrence that is concerned</remarks> <instances> <instance uid="AIXM-5.1.1_RULE-C6F99"> <profiles> <profile> <name>eEAD</name> <level>Error</level> </profile> </profiles> <parameters> <parameter name="property">designator</parameter> <parameter name="feature">RunwayDirection</parameter> <parameter name="parent_feature">Runway</parameter> <parameter name="association">uses</parameter> <parameter name="role">usedRunway</parameter> </parameters> </instance> </instances> </template> </AIXM-BR-SBVR> |
Tabular format
HTML
TBD... |
Tabular format
First, an XSL stylesheet is used to convert the AIXM-BR-SBVR.xml export file into a single HTML table, where templates are instantiated.
...
- copy the AIXM-BR-SBVR.xsl transformation file next to the AIXM-BR-SBVR.xml export file,
- open the AIXM-BR-SBVR.xml export file with Internet Explorer, or with any XSLT any XSLT compatible tool (like an XML editor ).
The result in HTML tabular format looks like this:
Warning |
---|
The HTML export has an editorial issue - a <parameter> element appears in some places, after a line break. The new line is displayed as a white space in the Rule textual description and tagged description. For example, in rule D6D81 displayed below, there is a white space before the value 'M' (... equal-to ' M' has ... instead of ... equal-to 'M' has ...). This editorial issue is propagated in the Excel file created as explained further down. For system that used to import the Excel file with the rules and generate data verification code automatically, this can result into erroneous code. Until the script is corrected, this editorial issue can be resolved by editing the HTML file with a text editor able to do find/replace based on regular expressions and removing all the new line and whitespace that precede the element <parameter name=....>. For example, in OxygenXML this can be done using Find '\n\s*<parameter Replace '<parameter with "Regular expression" option enabled. |
...
Excel
Finally, the HTML Then, the HTML table was imported in Microsoft Word and then copied into Excel. Here, the file was sorted by AIXM Class, AIXM Attribute and AIXM Associations. In addition, filters have been defined for the various 'Profile' columns.
The result in the form of en Excel table looks like this:
... TBD....