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

schematron iwxxm.sch : some elements are not valid #212

Closed dearith closed 4 years ago

dearith commented 4 years ago

Hi Team,

I'm using iwxxm.sch to validate IWXXM 3 xml (using crux)

I found some mistakes:

  1. some xpath to the RDF files are not correct, e.g.: document('codes.wmo.int-common-nil.rdf')/rdf:RDF/*/skos:member/ */@*[local-name()='about'] ) else( true() ) must be replaced by document('codes.wmo.int-common-nil.rdf')/rdf:RDF/descendant::*/skos:member/descendant::*/@*[local-name()='about'] ) else( true() ) because skos:member is not a direct child of rdf:RDF andelements containing about attribute are not a direct child of skos:member

  2. SIGMET.SIGMET-6 is not correct according to the error message : must be less than or equal to (so eq operator must be replaced by le operator) : `

    SIGMET.SIGMET-6: iwxxm:forecastPositionAnalysis//iwxxm:phenomenonTime must be less than or equal to iwxxm:validPeriod//endPosition ` replaced by ` SIGMET.SIGMET-6: iwxxm:forecastPositionAnalysis//iwxxm:phenomenonTime must be less than or equal to iwxxm:validPeriod//endPosition `

See iwxxm-modified.sch in my attache zip file

iwxxm_modified.zip

Regards

blchoy commented 4 years ago

Thank you for your feedback.

For (1), all options including /*/, // and /descendant::*/ works on my oXygen XML Editor. Interesting to know that it is not working on CRUX. Will consider changing to a less confusing representation in the next update.

(2) is definitely a bug and will be corrected together with #208.

blchoy commented 4 years ago

For (1) no change has been made For (2) it has been fixed in Version 3.0-dev under #208