...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="AIXM-BR-SBVR.xsl"?><AIXM-BR-SBVR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" criteriaUID="..." criteriaText="..." criteriaCategory="..." criteriaStatus="Rule accepted" criteriaSource="..." criteriaAssignee="..." criteriaAIXMversion="..." criteriaProfile="Event:Warning" criteriaRights="..." exportedAt="2019-01-04T12:32:47.111Z" xsi:noNamespaceSchemaLocation="AIXM-BR-SBVR.xsd"> <!-- all criteria used to select the rules are included as attributes of the root element. Criteria not used are left out. A time stamp for the export is added. --> <rule uid="AIXM-5.1_RULE-1A5E00"> <!-- example for a simple rule --> <profiles> <!-- for each applicable profile, include a profile element here. --> <profile> <name>EAD</name> <level>Error</level> </profile> <profile> <name>etc. if applicable</name> <level>...</level> </profile> </profiles> <!-- attention, the order of the fields is slightly different from the Excel export. References are at the end, as they are less important. --> <name>GML Profile - Geographic Reference Systems supported</name> <aixm_class>*</aixm_class> <aixm_attributes>*</aixm_attributes> <aixm_association/> <!-- empty fields should be included as they will make simpler the script for generating a HTML table at the end --> <sbvr> <!-- export here rule tagged description --> <keyword>It is prohibited that assigned</keyword> <noun_concept>srsName</noun_concept> <keyword>value</keyword> <keyword>not</keyword> <keyword>equal-to</keyword> <name>('urn:ogc:def:crs:EPSG::4326', 'urn:ogc:def:crs:EPSG::4258', 'urn:ogc:def:crs:EPSG::4322', 'urn:ogc:def:crs:EPSG::4230', 'urn:ogc:def:crs:EPSG::4668', 'urn:ogc:def:crs:EPSG::4312', 'urn:ogc:def:crs:EPSG::4215', 'urn:ogc:def:crs:EPSG::4801', 'urn:ogc:def:crs:EPSG::4149', 'urn:ogc:def:crs:EPSG::4275', 'urn:ogc:def:crs:EPSG::4746', 'urn:ogc:def:crs:EPSG::4121', 'urn:ogc:def:crs:EPSG::4658', 'urn:ogc:def:crs:EPSG::4299', 'urn:ogc:def:crs:EPSG::4806', 'urn:ogc:def:crs:EPSG::4277', 'urn:ogc:def:crs:EPSG::4207', 'urn:ogc:def:crs:EPSG::4274', 'urn:ogc:def:crs:EPSG::4740', 'urn:ogc:def:crs:EPSG::4313', 'urn:ogc:def:crs:EPSG::4124', 'urn:ogc:def:crs:EPSG::4267', 'urn:ogc:def:crs:EPSG::4269', 'urn:ogc:def:crs:OGC:1.3:CRS84')</name> </sbvr> <sbvr_html> <!-- export here the formatted SBVR from the HMI with HTML tags --> <font color="FF9900">It is prohibited that assigned</font> <font color="008080"><u><b>srsName</b></u></font> <font color="FF9900">value</font> <font color="FF9900">not</font> <font color="FF9900">equal-to</font> <font color="339966">('urn:ogc:def:crs:EPSG::4326', 'urn:ogc:def:crs:EPSG::4258', 'urn:ogc:def:crs:EPSG::4322', 'urn:ogc:def:crs:EPSG::4230', 'urn:ogc:def:crs:EPSG::4668', 'urn:ogc:def:crs:EPSG::4312', 'urn:ogc:def:crs:EPSG::4215', 'urn:ogc:def:crs:EPSG::4801', 'urn:ogc:def:crs:EPSG::4149', 'urn:ogc:def:crs:EPSG::4275', 'urn:ogc:def:crs:EPSG::4746', 'urn:ogc:def:crs:EPSG::4121', 'urn:ogc:def:crs:EPSG::4658', 'urn:ogc:def:crs:EPSG::4299', 'urn:ogc:def:crs:EPSG::4806', 'urn:ogc:def:crs:EPSG::4277', 'urn:ogc:def:crs:EPSG::4207', 'urn:ogc:def:crs:EPSG::4274', 'urn:ogc:def:crs:EPSG::4740', 'urn:ogc:def:crs:EPSG::4313', 'urn:ogc:def:crs:EPSG::4124', 'urn:ogc:def:crs:EPSG::4267', 'urn:ogc:def:crs:EPSG::4269', 'urn:ogc:def:crs:OGC:1.3:CRS84')</font> </sbvr_html> <comments>Only the coordinate reference system listed in Appendix 1 of the GML Guidelines for Aviation Data shall be used.</comments> <diagnostics>Only the coordinate reference system listed in Appendix 1 of the GML Guidelines for Aviation Data shall be used.</diagnostics> <timeslice>All</timeslice> <category>Standard (ICAO, industry, etc.)</category> <source>ICAO Annex 15</source> <reference>Appendix 1</reference> <schematron> <context>//*[@srsName]</context> <code>@srsName=( 'urn:ogc:def:crs:EPSG::4326', 'urn:ogc:def:crs:EPSG::4258', 'urn:ogc:def:crs:EPSG::4322', 'urn:ogc:def:crs:EPSG::4230', 'urn:ogc:def:crs:EPSG::4668', 'urn:ogc:def:crs:EPSG::4312', 'urn:ogc:def:crs:EPSG::4215', 'urn:ogc:def:crs:EPSG::4801', 'urn:ogc:def:crs:EPSG::4149', 'urn:ogc:def:crs:EPSG::4275', 'urn:ogc:def:crs:EPSG::4746', 'urn:ogc:def:crs:EPSG::4121', 'urn:ogc:def:crs:EPSG::4658', 'urn:ogc:def:crs:EPSG::4299', 'urn:ogc:def:crs:EPSG::4806', 'urn:ogc:def:crs:EPSG::4277', 'urn:ogc:def:crs:EPSG::4207', 'urn:ogc:def:crs:EPSG::4274', 'urn:ogc:def:crs:EPSG::4740', 'urn:ogc:def:crs:EPSG::4313', 'urn:ogc:def:crs:EPSG::4124', 'urn:ogc:def:crs:EPSG::4267', 'urn:ogc:def:crs:EPSG::4269', 'urn:ogc:def:crs:OGC:1.3:CRS84' )</code> </schematron> </rule> <templateUID<template uid="1ACF48"> <!-- example for a templated rule --> <profiles> <!-- for each applicable profile, include a profile element here. --> <profile> <name>EAD</name> <level>Error</level> </profile> <profile> <name>etc. if applicable</name> <level>...</level> </profile> </profiles> <!-- attention, the order of the fields is slightly different from the Excel export. References are at the end, as they are less important. --> <name>Mandatory unit of measurement</name> <aixm_class>${entity}</aixm_class> <aixm_attributes>${property}</aixm_attributes> <aixm_association/> <!-- empty fields should be included as they will make simpler the script for generating a HTML table at the end --> <sbvr> <!-- export here rule tagged description --> <keyword>Each </keyword><noun_concept>${entity}</noun_concept> <keyword>with assigned</keyword> <noun_concept>${property}</noun_concept> <keyword>shall</keyword> <verb_concept-concept>have</verb_concept-concept> <keyword>assigned</keyword> <noun_concept>${property}.uom</noun_concept> <keyword>value</keyword> </sbvr> <sbvr_html> <!-- export here the formatted SBVR from the HMI with HTML tags --> <font color="#ff9900">Each </font><strong><u><font color="#008080">${entity}</font></u></strong> <font color="#ff9900">with assigned</font> <strong><u><font color="#008080">${property}</font></u></strong> <font color="#ff9900">shall</font> <em><font color="#0000ff">have</font></em> <font color="#ff9900">assigned</font> <strong><u><font color="#008080">${property}.uom</font></u></strong> <font color="#ff9900">value</font><u><font color="#008080"><b></b></font></u><font color="#008080"></font><u><b></b></u><b></b><u><font color="#008080"></font></u><font color="#008080"></font> </sbvr_html> <comments>The Unit of measurement shall be specified if a value is specified for a property with uom attribute.</comments> <diagnostics>Found ${entity} with assigned ${property} value missing unit of measurement</diagnostics> <timeslice>All</timeslice> <category>Coding rule</category> <source>AIXM Model</source> <reference/> <schematron> <context>//aixm:${entity}/aixm:${property} | //aixm:${entity}TimeSlice/aixm:${property}</context> <code>string-length(.)=0 or string-length(@uom)!=0</code> </schematron> <instances> <instance UID="AIXM-5.1_RULE-D8CC1"> <profiles> <!-- for each applicable profile specified, include a profile element here. --> <profile> <name>etc. if applicable</name> <level>...</level> </profile> </profiles> <parameters> <parameter name="entity">AerialRefuellingAnchor</parameter> <parameter name="property">speedLimit</parameter> </parameters> </instance> <instance UID="AIXM-5.1_RULE-D8CC3"> <profiles> <!-- for each applicable profile specified, include a profile element here. --> <profile> <name>etc. if applicable</name> <level>...</level> </profile> </profiles> <parameters> <parameter name="entity">AerialRefuellingAnchor</parameter> <parameter name="property">legLength</parameter> </parameters> </instance> <!-- etc. --> </instances> </template> </AIXM-BR-SBVR> |
...
The result in HTML tabular format looks like this:
UID | Profile: EAD | Profile: Event | Profile: Event_FAA | Source | Reference | Rule textual description | Rule tagged description | Comments | Diagnostics | AIXM Class | AIXM Attributes | AIXM Associations | Timeslice Applicability | Category | Name |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AIXM-5.1_RULE-D6D81 | Warning | ICAO Annex 11 | Table A5-2; Volume 2 Table A1-2 | It is prohibited that AirportHeliport with assigned ARP.ElevatedPoint.verticalAccuracy value and ARP.ElevatedPoint.verticalAccuracy.uom equal-to ' M' has ARP.ElevatedPoint.verticalAccuracy value higher-than 0.5 | <keyword> It is prohibited that </keyword><noun_concept> AirportHeliport </noun_concept><keyword> with assigned </keyword><noun_concept> ARP.ElevatedPoint.verticalAccuracy </noun_concept><keyword> value </keyword><keyword> and </keyword><noun_concept> ARP.ElevatedPoint.verticalAccuracy.uom </noun_concept><keyword> equal-to </keyword><name> ' M' </name><verb_concept> has </verb_concept><noun_concept> ARP.ElevatedPoint.verticalAccuracy </noun_concept><keyword> value </keyword><keyword> higher-than </keyword> | The accuracy of the AirportHeliport ARP.ElevatedPoint.verticalAccuracy shall be not less than 0.5 | Found AirportHeliport with insufficient vertical accuracy (ARP.ElevatedPoint.verticalAccuracy) | AirportHeliport | ARP.ElevatedPoint.verticalAccuracy | Standard (ICAO, industry, etc.) | Accuracy (vertical) - AirportHeliport | ||||
AIXM-5.1_RULE-D6D8A | Warning | ICAO Annex 11 | Table A5-2; Volume 2 Table A1-2 | It is prohibited that RunwayCentrelinePoint with assigned location.ElevatedPoint.verticalAccuracy value and location.ElevatedPoint.verticalAccuracy.uom equal-to ' M' has location.ElevatedPoint.verticalAccuracy value higher-than 0.25 | <keyword> It is prohibited that </keyword><noun_concept> RunwayCentrelinePoint </noun_concept><keyword> with assigned </keyword><noun_concept> location.ElevatedPoint.verticalAccuracy </noun_concept><keyword> value </keyword><keyword> and </keyword><noun_concept> location.ElevatedPoint.verticalAccuracy.uom </noun_concept><keyword> equal-to </keyword><name> ' M' </name><verb_concept> has </verb_concept><noun_concept> location.ElevatedPoint.verticalAccuracy </noun_concept><keyword> value </keyword><keyword> higher-than </keyword> | The accuracy of the RunwayCentrelinePoint location.ElevatedPoint.verticalAccuracy shall be not less than 0.25 | Found RunwayCentrelinePoint with insufficient vertical accuracy (location.ElevatedPoint.verticalAccuracy) | RunwayCentrelinePoint | location.ElevatedPoint.verticalAccuracy | Standard (ICAO, industry, etc.) | Accuracy (vertical) - RunwayCentrelinePoint |
Excel
Finally, 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.
...