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