You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
Schematron rules like TAF.TAF2 are in 2021-2 version applied not just to translationFailedTAC but also for NON-OPERATIONAL reports, and this fails when isCancelReport="true" as schematron rule expects iwxxm:validPeriod to be present, but in this case there is iwxxm:cancelledReportValidPeriod
To Reproduce
Run schematron on iwxxm 2021-2 TAF document which is permissibleUsage="NON-OPERATIONAL", permissibleUsageReason="TEST", isCancelReport="true"
Expected behavior
Schematron will not complain.
Screenshots
Schematron now fails with error: TAF.TAF-2: A non-operational report or a report that failed translation should have as a minimum appropriately filled elements including iwxxm:issueTime, iwxxm:aerodrome and iwxxm:validPeriod
Additional context
We used the TAC below to generate the iwxxm report with set permissibleUsage="NON-OPERATIONAL"
The permissableUsageReason attribute is used for non-operational test or exercise advisories. There is no requirement that products such as the TAF (or SIGMETs/AIRMETs) need this also.
Hi Mark,
my point was that if we use in our test permissableUsageReason NON-OPERATIONAL for cancel products, the changed schematron rule fails:
<sch:pattern id="TAF.TAF-2">
<sch:rule context="//iwxxm:TAF">
<sch:assert test="( if( (string-length(@translationFailedTAC) gt 0) or (@permissibleUsage = 'NON-OPERATIONAL') ) then( exists(iwxxm:issueTime) and exists(iwxxm:aerodrome) and exists(iwxxm:validPeriod) ) else( true() ) )">TAF.TAF-2: A non-operational report or a report that failed translation should have as a minimum appropriately filled elements including iwxxm:issueTime, iwxxm:aerodrome and iwxxm:validPeriod</sch:assert>
</sch:rule>
</sch:pattern>
The part or (@permissibleUsage = 'NON-OPERATIONAL') was added recently and breaks this rule for cancel non-operational reports.
Is it possible to have non-operational cancel test reports? If yes, then schematron rule should work with them.
Describe the bug
Schematron rules like
TAF.TAF2
are in 2021-2 version applied not just to translationFailedTAC but also for NON-OPERATIONAL reports, and this fails whenisCancelReport="true"
as schematron rule expectsiwxxm:validPeriod
to be present, but in this case there isiwxxm:cancelledReportValidPeriod
To Reproduce
Run schematron on iwxxm 2021-2
TAF
document which ispermissibleUsage="NON-OPERATIONAL", permissibleUsageReason="TEST", isCancelReport="true"
Expected behavior
Schematron will not complain.
Screenshots
Schematron now fails with error:
TAF.TAF-2: A non-operational report or a report that failed translation should have as a minimum appropriately filled elements including iwxxm:issueTime, iwxxm:aerodrome and iwxxm:validPeriod
Additional context
We used the TAC below to generate the iwxxm report with set
permissibleUsage="NON-OPERATIONAL"
I attached example xml file which reproduces the problem. Please ignore the extensive namespaces in xml header which are probably not necessary there.
bug_taf_schematron.txt
The text was updated successfully, but these errors were encountered: