diff --git a/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js b/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js
index 5bf9527093..b436615ae4 100644
--- a/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js
+++ b/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js
@@ -191,7 +191,14 @@ OpenLayers.Format.WMTSCapabilities.v1_0_0 = OpenLayers.Class(
},
"MatrixHeight": function(node, obj) {
obj.matrixHeight = parseInt(this.getChildValue(node));
- },
+ },
+ "ResourceURL": function(node, obj) {
+ obj.resourceUrl = obj.resourceUrl || {};
+ obj.resourceUrl[node.getAttribute("resourceType")] = {
+ format: node.getAttribute("format"),
+ template: node.getAttribute("template")
+ };
+ },
// not used for now, can be added in the future though
/*"Themes": function(node, obj) {
obj.themes = [];
diff --git a/tests/Format/WMTSCapabilities/v1_0_0.html b/tests/Format/WMTSCapabilities/v1_0_0.html
index 867066772b..74925378fa 100644
--- a/tests/Format/WMTSCapabilities/v1_0_0.html
+++ b/tests/Format/WMTSCapabilities/v1_0_0.html
@@ -36,7 +36,7 @@
}
function test_layers(t) {
- t.plan(21);
+ t.plan(25);
var xml = document.getElementById("ogcsample").firstChild.nodeValue;
var doc = new OpenLayers.Format.XML().read(xml);
@@ -75,7 +75,14 @@
t.eq(wgs84Bbox.right, 180.0, "wgs84BoudingBox right is correct");
t.eq(wgs84Bbox.bottom, -90.0, "wgs84BoudingBox bottom is correct");
t.eq(wgs84Bbox.top, 90.0, "wgs84BoudingBox top is correct");
-
+
+ t.eq(layer.resourceUrl.tile.format, "image/png", "resourceUrl.tile.format is correct");
+ t.eq(layer.resourceUrl.tile.template, "http://www.example.com/wmts/coastlines/{TileMatrix}/{TileRow}/{TileCol}.png",
+ "resourceUrl.tile.template is correct");
+
+ t.eq(layer.resourceUrl.FeatureInfo.format, "application/gml+xml; version=3.1", "resourceUrl.FeatureInfo.format is correct");
+ t.eq(layer.resourceUrl.FeatureInfo.template, "http://www.example.com/wmts/coastlines/{TileMatrixSet}/{TileMatrix}/{TileRow}/{TileCol}/{J}/{I}.xml",
+ "resourceUrl.FeatureInfo.template is correct");
}
function test_tileMatrixSets(t) {
@@ -240,6 +247,10 @@ http://schemas.opengis.net/wmts/1.0/examples/wmtsGetCapabilities_response.xml
180 90
coastlines
+
+