wmo-im / iwxxm

XML schema and Schematron for aviation weather data exchange
https://old.wmo.int/wiswiki/tiki-index.php%3Fpage=TT-AvXML
48 stars 22 forks source link

Guidance on R/SNOCLO appears to be incompatible with IWXXM.nilReasonCheck #203

Closed lcdunstan closed 3 years ago

lcdunstan commented 4 years ago
 SNOCLO - Runways closed due to snow
  When all runways are closed due to snow, this shall be indicated with a "runwayState" with a nilReason of "http://codes.wmo.int/bufr4/codeflag/0-20-085/1"

but

   <sch:pattern id="IWXXM.nilReasonCheck">
      <sch:rule context="//iwxxm:*">
         <sch:assert test="( if( exists(@nilReason) ) then( @nilReason = document('codes.wmo.int-common-nil.rdf')/rdf:RDF/*/skos:member/*/@*[local-name()='about'] ) else( true() ) )">IWXXM.nilReasonCheck: nilReason attributes should be a member of http://codes.wmo.int/common/nil</sch:assert>
      </sch:rule>
   </sch:pattern>

so validation fails.

mgoberfield commented 4 years ago

Luke, Good catch.

All runways closed or all runways cleared (of snow) are treated inconsistently. For the former condition, nilReason is set in . For the latter, isn't nilled, but attributes 'allRunways' and 'cleared' are set to 'true'.

Thus for all runway cleared condition we don't use https://codes.wmo.int/bufr4/codeflag/0-20-085/0

blchoy commented 4 years ago

I think this is a real issue as we mandate all nilReasons to be a member of code list http://codes.wmo.int/common/nil. The closest entry I can think of from this code list is http://codes.wmo.int/common/nil/inapplicable but it lacks the direct meaning of snow closure. In any case this needs at least a patch (i.e. updating documents including the TAC-to-XML guidance and Manual on Codes) to fix.

porosnie commented 4 years ago

With the new ICAO "global reporting format", which will become applicable in Nov 2020, my understanding was that METAR will no longer be used for providing airport surfaces contamination information. Thus, the current "snowclo" concept would also disappear. If a runway is closed due to snow, it requires anyhow a NOTAM to be published.

Digital data for runways contamination would be provided through Digital NOTAM, there is a coding scenario being drafted for that using AIXM.

blchoy commented 4 years ago

Thanks @porosnie for reminding. I almost forget this change even though our office is working with the local airport authority on providing such a data automatically. In the current version of Annex 3:

image where Remark 16 said "To be included in accordance with 4.8.1.5 b) until 4 November 2020."

In any case it is still an issue at the moment but because of the time needed to fix we may probably want to propose a way for deprecating rather than fixing this element.

blchoy commented 3 years ago

As the applicability of GRF had been delayed for one year in Amendment 80, and so did the removal of runway state in METAR/SPECI, we will implement making 'runwayState' NIL and the use of nilReason 'inapplicable' for SNOCLO. There will be no change to the schema, just the documentations.

blchoy commented 3 years ago

This was implemented in IWXXM 2021-2RC1.