Closed amilan17 closed 3 years ago
Referencing #209.
Further to the proposed changes so far, @jkorosi raised the question whether the existing schema can adequately represent WC and WA SIGMETs where the conjunction AND is being used. In some sense it is, for example:
YUDD SIGMET 3 VALID 251230/251830 YUSO-YUDD SHANLON FIR TC GLORIA PSN N22 W061 CB OBS AT 1200Z WI 050KM OF TC CENTRE TOP FL500 INTSF FCST AT 1800Z TC CENTRE PSN N2230 W06230 CB WI 060KM OF TC CENTRE AND OBS AT 1220Z WI N2230 W06045 -N2230 W06015 -N2200 W06030 -N2230 W06045 TOP ABV FL500 FCST AT 1800Z WI N2300 W06200 -N2300 W06130 -N2230 W06145 -N2300 W06200=
We can only group the OBS CBs (yellow ones) together in the same iwxxm:TropicalCycloneSIGMETEvolvingConditionCollection and the FCST CBs (red ones) together in the same iwxxm:TropicalCycloneSIGMETForecastPositionCollection, which apparently lacked the intrinsic connection between individual OBS and FCST CBs.
My general comment is that this is a deficiency, but information-wise the existing implementation can adequately represent the start and end phases in the corresponding TAC message.
@jkorosi proposed a non-breaking and possibly the simplest solution: Add an optional attribute to iwxxm:SIGMETPosition to link back to its ancestor in iwxxm:SIGMETEvolvingCondition.
<iwxxm:analysis>
<iwxxm:VolcanicAshSIGMETEvolvingConditionCollection>
...
<iwxxm:member>
<iwxxm:SIGMETEvolvingCondition gml:id="OBSCloud1">
...
</iwxxm:SIGMETEvolvingCondition>
</iwxxm:member>
<iwxxm:member>
<iwxxm:SIGMETEvolvingCondition gml:id="OBSCloud2">
...
</iwxxm:SIGMETEvolvingCondition>
</iwxxm:member>
</iwxxm:VolcanicAshSIGMETEvolvingConditionCollection>
</iwxxm:analysis>
<iwxxm:forecastPositionAnalysis>
<iwxxm:VolcanicAshSIGMETPositionCollection>
...
<iwxxm:member>
<iwxxm:SIGMETPosition gml:id="FCSTCloud1" backlink="OBSCloud1">
...
</iwxxm:SIGMETPosition>
</iwxxm:member>
<iwxxm:member>
<iwxxm:SIGMETPosition gml:id="FCSTCloud2" backlink="OBSCloud2">
...
</iwxxm:SIGMETPosition>
</iwxxm:member>
</iwxxm:VolvanicAshSIGMETPositionCollection>
</iwxxm:forecastPositionAnalysis>
Another solution based on comments from @jkorosi and @moryakovdv which is a breaking change but look closer to TAC is shown as below:
Views please? Especially on whether we choose to:
[Post discussion note: The above changes missed the different observation time of the second CB (1220Z in the above example) from the observation time of the tropical cyclone centre + first CB (1200Z). Note 19 of the SIGMET TAC template state that "Each location and forecast position is to be preceded by an observed or forecast time". This gives flexibility to describing the situation but personally I don't see it necessary to describe situations beyond snapshots at the time of observation and forecast. In any case there exists solutions but they will definitely be breaking solutions.]
Not ready - this issue will be addressed in the next cycle
We will also need to confirm next time on the changes we have made so far in https://github.com/wmo-im/iwxxm/compare/FT2021-2_SIGMET
Even though we are rolling back the changes we have made to the form we have in IWXXM 3.0, we still need to amend the notes under iwxxm:directionOfMotion and iwxxm:speedOfMotion as mentioned in another post under AIRMET Readiness. This shall also make the version of SIGMET advanced from 3.0.0 to 3.0.1.
I realize that two issues remain unresolved:
<sch:pattern id="VolcanicAshSIGMET.VolcanicAshSIGMET-2">
<sch:rule context="//iwxxm:VolcanicAshSIGMET">
<sch:assert test="( if( (empty(@isCancelReport) or @isCancelReport = 'false') and string-length(@translationFailedTAC) eq 0 ) then( exists(iwxxm:eruptingVolcano) ) else( true() ) )">VolcanicAshSIGMET.VolcanicAshSIGMET-2: An ordinary report should also have iwxxm:eruptingVolcano</sch:assert>
</sch:rule>
</sch:pattern>
Movement or expected movement - STNR Stationary phenomenon shall be denoted with both iwxxm:directionOfMotion and iwxxm:speedOfMotion absent
The description in https://schemas.wmo.int/iwxxm/3.0/sigmet.xsd is not aligned with it. The same is for airmet.xsd.
<complexType name="SIGMETEvolvingConditionType">
<complexContent>
<extension base="gml:AbstractFeatureType">
<sequence>
...
<element nillable="true" name="directionOfMotion" type="iwxxm:AngleWithNilReasonType" minOccurs="0" maxOccurs="1">
<annotation>
<documentation>
This element refers to the expected direction of movement which
the phenomenon is moving towards, .e.g, "moving east".
When no movement is expected, this is a
http://www.opengis.net/def/nil/OGC/0/inapplicable nilReason
and the speedOfMotion will be 0.
This element value is given in degrees from true North. Plane angle unit
of measure (uom) is "deg".
</documentation>
</annotation>
</element>
<element name="speedOfMotion" type="gml:SpeedType" minOccurs="0" maxOccurs="1">
<annotation>
<documentation>
The expected speed of movement of a meteorological condition.
When no movement is expected, this will have a value of 0
and directionOfMotion will have a
http://www.opengis.net/def/nil/OGC/0/inapplicable nilReason.
speedOfMotion can be provided in either two units of measures: "km/h"
or "[kn_i]" (knots).
</documentation>
</annotation>
</element>
...
</sequence>
...
</extension>
</complexContent>
</complexType>
The Manual on Codes (306) defines also requirements which are not aligned with intention of #187. It says that only
With regard to the unresolved issues in https://github.com/wmo-im/iwxxm/issues/250#issuecomment-857514140
Item 2 was fixed in commit https://github.com/wmo-im/iwxxm/commit/3bff2a4b1e1ec7721ea083e6ecfc14a382fd0809
Item 1 was fixed in commit https://github.com/wmo-im/iwxxm/commit/d06fa3f815e71ae619bf6f07d5acaa91a8224527 with the removal of the rule.
Branch
https://github.com/wmo-im/iwxxm/tree/FT2021-2_SIGMET
Summary and Purpose
Validate for public consultation readiness.
Related Branches
209
241