diff --git a/src/main/resources/sch/wmts/1.0/Capabilities.sch b/src/main/resources/sch/wmts/1.0/Capabilities.sch new file mode 100644 index 0000000..0d076c8 --- /dev/null +++ b/src/main/resources/sch/wmts/1.0/Capabilities.sch @@ -0,0 +1,98 @@ + + + + + + + + Schematron validation for OWS context + + + + + + + A WMTS Simple shall declare support for one of the following profiles: "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile" or "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84". + + + + A WMTS Simple shall advertise a URL template to get the ServiceMetadata document. + + + A WMTS Simple shall advertise at least a layer URL template of resourceType="simpleProfileTile" or resourceType="simpleProfileTileCRS84". + A WMTS Simple following the "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile" profile shall provide a template of the type 'simpleProfileTile' at least in one layer. + A WMTS Simple following the "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84" profile shall provide a template of the type 'simpleProfileCRS84Tile' at least in one layer. + + + A WMTS Simple following the "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile" and a layer with a resourceType 'simpleProfileTile' in the URL template shall declare support to a TileMatrixSet with identifier="WorldWebMercatorQuad" by linking it in the wmts:TileMatrixSetLink element. Error in layer "" + A WMTS Simple following the "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile" and a layer with a resourceType 'simpleProfileCRS84Tile' in the URL template shall declare support to a TileMatrixSet with identifier="WorldCRS84Quad" by linking it in the wmts:TileMatrixSetLink element. Error in layer "" + {TileMatrixSet} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileTile'. Error in layer "". + {style} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileTile'. Error in layer "". + {TileMatrix} shall be included for a WMTS Simple with a URL template with resourceType 'simpleProfileTile'. Error in layer "". + {TileRow} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileTile'. Error in layer "". + {TileCol} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileTile'. Error in layer "". + {TileMatrixSet} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileCRS84Tile'. Error in layer "". + {style} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileCRS84Tile'. Error in layer "". + {TileMatrix} shall be included for a WMTS Simple with a URL template with resourceType 'simpleProfileCRS84Tile'. Error in layer "". + {TileRow} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileCRS84Tile'. Error in layer "". + {TileCol} is not allowed for a WMTS Simple with a URL template with resourceType 'simpleProfileCRS84Tile'. Error in layer "". + URL template with resourceType 'simpleProfileTile' shall only be in format="image/png" or format="image/jpeg". Error in layer "". + URL template with resourceType 'simpleProfileCSR84Tile' shall only be in format="image/png" or format="image/jpeg". Error in layer "". + + + A WMTS Simple shall declare support for "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile" shall have a TileMatrixSet with blank identifier and BoundingBox in urn:ogc:def:crs:EPSG::3857 (-20037508.3427892 -20037508.3427892) x (20037508.3427892 20037508.3427892) + A WMTS Simple shall declare support for "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile" shall have a TileMatrixSet with blank identifier and WellKnownScaleSet='urn:ogc:def:wkss:OGC:1.0:GoogleMapsCompatible' + Wrong definition of the TileMatrix '0' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '1' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '2' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '3' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '4' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '5' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '6' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '7' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '8' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '9' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '10' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '11' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '12' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '13' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '14' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '15' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '16' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '17' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + Wrong definition of the TileMatrix '18' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile' profile. + + + A WMTS Simple supporting "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84" shall have a TileMatrixSet with identifier 'WorldCRS84Quad' and BoundingBox in urn:ogc:def:crs:OGC:1.3:CRS84 (-180 -90) x (-180 -90) + A WMTS Simple supporting "http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CSR84" shall have a TileMatrixSet with identifier 'WorldCRS84Quad' and WellKnownScaleSet='urn:ogc:def:wkss:OGC:1.0:GoogleCRS84Quad'. + Wrong definition of the TileMatrix '-1' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '0' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '1' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '2' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '3' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '4' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '5' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '6' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '7' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '8' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '9' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '10' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '11' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '12' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '13' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '14' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '15' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '16' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '17' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + Wrong definition of the TileMatrix '18' for WMTS Simple in 'http://www.opengis.net/spec/wmts-simple/1.0/conf/simple-profile/CRS84' profile. + + + \ No newline at end of file diff --git a/src/main/scripts/ctl/WMTS_ETS.xml b/src/main/scripts/ctl/WMTS_ETS.xml index 5b20bf1..0a57f0e 100644 --- a/src/main/scripts/ctl/WMTS_ETS.xml +++ b/src/main/scripts/ctl/WMTS_ETS.xml @@ -411,6 +411,10 @@ + + + + @@ -652,4 +656,14 @@ + + WMTS capabilities document + The server satisfies all SimpleProfile requirements for all supported bindings. + + + + + + + \ No newline at end of file diff --git a/src/main/scripts/ctl/ctlFunctions.xml b/src/main/scripts/ctl/ctlFunctions.xml index d72ba67..d61577c 100644 --- a/src/main/scripts/ctl/ctlFunctions.xml +++ b/src/main/scripts/ctl/ctlFunctions.xml @@ -212,5 +212,13 @@ AAAAAMCT/j9KGCQIgHYI9QAAAABJRU5ErkJggg== > + + + + + A list of errors (NodeList of "error" elements). + Invokes the Schematron validator. + + diff --git a/src/main/scripts/ctl/wmts-auto.xml b/src/main/scripts/ctl/wmts-auto.xml index 8ed67a8..c877ea0 100644 --- a/src/main/scripts/ctl/wmts-auto.xml +++ b/src/main/scripts/ctl/wmts-auto.xml @@ -381,6 +381,10 @@ + + + + @@ -622,4 +626,14 @@ + + WMTS capabilities document + The server satisfies all SimpleProfile requirements for all supported bindings. + + + + + + + \ No newline at end of file diff --git a/src/main/scripts/ctl/wmtsSimpleProfileTests.xml b/src/main/scripts/ctl/wmtsSimpleProfileTests.xml new file mode 100644 index 0000000..8168bd1 --- /dev/null +++ b/src/main/scripts/ctl/wmtsSimpleProfileTests.xml @@ -0,0 +1,58 @@ + + + + + + Validate an XML instance against a Schematron schema using the default phase. + + + + Error: Null input document. + + + + + + + /sch/wmts/1.0/Capabilities.sch + DefaultPhase + + + + Total number of errors detected: + + + + + + : + + + + + + + + + + \ No newline at end of file