| Created: | 02/05/2012 3:24:57 PM |
| Modified: | 02/05/2016 9:00:47 PM |
Project: |
|
Advanced: |
|
| Attribute | ||
|
Public Boolean cloudAndVisibilityOK |
||
Details:
|
||
|
Public Measure airTemperature |
||
Details:
sequenceNumber=1
|
||
|
Public Measure dewpointTemperature |
||
Details:
sequenceNumber=2
|
||
|
Public Measure qnh |
||
Details:
sequenceNumber=3
|
| Element | Source Role | Target Role |
|
«dataType» AerodromeWindShear Class |
Name: |
Name: windShear |
Details:
|
||
|
«codeList» AerodromePresentWeather Class |
Name: |
Name: presentWeather |
Details:
When observed, between one and three present weather conditions<br/><br/>When present weather cannot be observed by the automatic observing system due to a temporary failure of the system/sensor ("//") the present weather is missing with a nil reason of notObservable.<br/>
|
||
|
«dataType» AerodromeRunwayState Class |
Name: |
Name: runwayState |
Details:
When runways are affected by snow, slush, or other contaminants, a runway state report for each runway in use is required.<br/><br/>There is no maximum number of runway states that can be reported. This may be changed in a future amendment.<br/>
|
||
|
«dataType» AerodromeHorizontalVisibility Class |
Name: |
Name: visibility |
Details:
|
||
|
«codeList» AerodromeRecentWeather Class |
Name: |
Name: recentWeather |
Details:
|
||
|
«dataType» AerodromeSurfaceWind Class |
Name: |
Name: surfaceWind |
Details:
|
||
|
«dataType» AerodromeObservedClouds Class |
Name: |
Name: cloud |
Details:
When no clouds are detected by the automatic observing system, it should be indicated by a missing cloud group with a nil reason of notDetectedByAutoSystem ("NCD" from TAC). <br/><br/>When there are no clouds of operational significance and no restriction on vertical visibility and “CAVOK” is not appropriate ("NSC") it should be indicated by a missing cloud group with a nil reason of nothingOfOperationalSignificance<br/><br/>
|
||
|
«dataType» AerodromeSeaState Class |
Name: |
Name: seaState |
Details:
|
||
|
«dataType» AerodromeRunwayVisualRange Class |
Name: |
Name: rvr |
Details:
RVR conditions are required if horizontal visibility or RVR is less than 1500 meters, up to a maximum of four runways<br/>
|
||
| Tag | Value |
| byValuePropertyType | false |
Details:
|
|
| isCollection | false |
Details:
|
|
| noPropertyType | false |
Details:
|
|
| Constraint | Type | Status |
| if( cloudAndVisibilityOK ) visibility == NULL | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec1<br/>Description: visibility should not be reported when cloudAndVisibilityOK is true<br/>Assertion: (if(@cloudAndVisibilityOK='true') then empty(iwxxm:visibility) else true())<br/>
|
||
| if( cloudAndVisibilityOK ) rvr == NULL | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec2<br/>Description: rvr should not be reported when cloudAndVisibilityOK is true<br/>Assertion: (if(@cloudAndVisibilityOK='true') then empty(iwxxm:rvr) else true())<br/>
|
||
| if( cloudAndVisibilityOK ) presentWeather == NULL | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec3<br/>Description: presentWeather should not be reported when cloudAndVisibilityOK is true<br/>Assertion: (if(@cloudAndVisibilityOK='true') then empty(iwxxm:presentWeather) else true())<br/>
|
||
| if( cloudAndVisibilityOK ) clouds == NULL | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec4<br/>Description: clouds should be absent when cloudAndVisibilityOK is true<br/>Assertion: (if( @cloudAndVisibilityOK eq 'true' ) then (empty(iwxxm:cloud)) else (true()))<br/>
|
||
| if( visibility != NULL && visibility.prevailingVisibility < 1500 ) rvr.size() > 0 | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec5<br/>Description: Table A3-2 Note 7 states: "To be included if visibility or RVR #lt; 1500 m; for up to a maximum of four runways". This is interpreted to mean that if the prevailing visibility is below 1500 meters, RVR should always be included<br/>Assertion: (if((exists(iwxxm:visibility)) and (iwxxm:visibility//iwxxm:prevailingVisibility/number(text()) lt 1500) and (iwxxm:visibility//iwxxm:prevailingVisibility/@uom eq 'm')) then (exists(iwxxm:rvr)) else true())<br/>
|
||
| if( airTemperature != NULL and airTemperature/@xsi:nil != "true") lower-case(@uom) == "cel" | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec6<br/>Description: airTemperature shall be reported in degrees Celsius (Cel). <br/>Assertion: (if(exists(iwxxm:airTemperature) and (not(exists(iwxxm:airTemperature/@xsi:nil)) or iwxxm:airTemperature/@xsi:nil != 'true')) then (lower-case(iwxxm:airTemperature/@uom) = 'cel') else true())<br/>
|
||
| if( dewpointTemperature != NULL dewpointTemperature/@xsi:nil != "true" ) lower-case(@uom) == "cel" | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec7<br/>Description: dewpointTemperature shall be reported in degrees Celsius (Cel). <br/>Assertion: (if(exists(iwxxm:dewpointTemperature) and (not(exists(iwxxm:dewpointTemperature/@xsi:nil)) or iwxxm:dewpointTemperature/@xsi:nil != 'true')) then (lower-case(iwxxm:dewpointTemperature/@uom) = 'cel') else true())<br/>
|
||
| if( qnh != NULL and qnh/@xsi:nil != "true" ) lower-case(@uom) == "hpa" | Invariant | Approved |
Details:
Pattern ID: METAR_SPECI.MAORec8<br/>Description: qnh shall be reported in hectopascals (hPa). <br/>Assertion: (if(exists(iwxxm:qnh) and (not(exists(iwxxm:qnh/@xsi:nil)) or iwxxm:qnh/@xsi:nil != 'true')) then (lower-case(iwxxm:qnh/@uom) = 'hpa') else true())<br/>
|
||