diff --git a/data-ac-mf/ac-mf-ia/ets-ac-mf-ia-bsxets.xml b/data-ac-mf/ac-mf-ia/ets-ac-mf-ia-bsxets.xml index fd8cc845e..d46d2f1eb 100644 --- a/data-ac-mf/ac-mf-ia/ets-ac-mf-ia-bsxets.xml +++ b/data-ac-mf/ac-mf-ia/ets-ac-mf-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-07-12T10:00:00Z - Consortium Bilbomatica, Guadaltel y Geograma - 2021-07-12T10:00:00Z + Consortium Bilbomatica y Guadaltel y Geograma + 2023-06-15T14:15:00Z @@ -82,6 +82,8 @@ let $messages_omso := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -93,14 +95,19 @@ let $messages_omso := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_omor := @@ -112,6 +119,8 @@ let $messages_omor := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -123,14 +132,19 @@ let $messages_omor := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages:= ($messages_omso, $messages_omor) @@ -169,6 +183,8 @@ let $messages_omso := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -180,14 +196,19 @@ let $messages_omso := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_omor := @@ -199,6 +220,8 @@ let $messages_omor := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -210,14 +233,19 @@ let $messages_omor := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages:= ($messages_omso, $messages_omor) diff --git a/data-am/am-ia/ets-am-ia-bsxets.xml b/data-am/am-ia/ets-am-ia-bsxets.xml index 9a7bbf038..c3ff4f1e8 100644 --- a/data-am/am-ia/ets-am-ia-bsxets.xml +++ b/data-am/am-ia/ets-am-ia-bsxets.xml @@ -11,11 +11,11 @@ Source:
  • Conformance Class 'Information accessibility'
  • ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-05-15T10:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-05-28T13:30:00Z + 2023-06-16T12:10:00Z @@ -76,6 +76,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -87,13 +89,18 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not($feature/am:zoneType)) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (not(count($feature/am:zoneType) = count($feature/am:zoneType/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -124,6 +131,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -135,11 +144,16 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($feature/am:specialisedZoneType) > 1) then local:addMessage('TR.wrongMultiplicitySpecialisedZoneType', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'count': count($feature/am:specialisedZoneType)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', diff --git a/data-br/br-ia/ets-br-ia-bsxets.xml b/data-br/br-ia/ets-br-ia-bsxets.xml index 48670ffae..194d65019 100644 --- a/data-br/br-ia/ets-br-ia-bsxets.xml +++ b/data-br/br-ia/ets-br-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-01-27T10:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-01-27T10:00:00Z + 2023-06-16T11:00:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,6 +94,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (exists($feature) and not(exists($envDom))) then @@ -100,8 +107,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityBioReg', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (exists($feature) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeBioReg', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkBioReg', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkBioReg', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return diff --git a/data-bu/bu-ia/ets-bu-ia-bsxets.xml b/data-bu/bu-ia/ets-bu-ia-bsxets.xml index b8e138545..c50ca6eaa 100644 --- a/data-bu/bu-ia/ets-bu-ia-bsxets.xml +++ b/data-bu/bu-ia/ets-bu-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-09-29T14:45:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-09-29T14:45:00Z + 2023-06-16T13:10:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,10 +94,15 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_parts := @@ -116,6 +123,8 @@ let $messages_parts := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -127,10 +136,15 @@ let $messages_parts := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $combined_messages := ($messages, $messages_parts) @@ -165,6 +179,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -176,6 +192,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (exists($feature) and not(exists($envDom))) then @@ -184,8 +205,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (exists($feature) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if ((exists($feature)) and (count($invalid_urls) > 0)) then - local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if ((exists($feature)) and (count($invalid_urls_orig) > 0)) then + local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_parts := @@ -206,6 +227,8 @@ let $messages_parts := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -217,6 +240,11 @@ let $messages_parts := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (exists($feature) and not(exists($envDom))) then @@ -225,8 +253,8 @@ let $messages_parts := local:addMessage('TR.wrongMultiplicityBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (exists($feature) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if ((exists($feature)) and (count($invalid_urls) > 0)) then - local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if ((exists($feature)) and (count($invalid_urls_orig) > 0)) then + local:addMessage('TR.brokenLinkBuildings', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () diff --git a/data-ef/ef-ia/ets-ef-ia-bsxets.xml b/data-ef/ef-ia/ets-ef-ia-bsxets.xml index 612e35e04..ba1b8fd41 100644 --- a/data-ef/ef-ia/ets-ef-ia-bsxets.xml +++ b/data-ef/ef-ia/ets-ef-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-09-09T14:45:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-09-09T14:45:00Z + 2023-06-15T13:45:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,14 +94,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/ef:measurementRegime))) then local:addMessage('TR.missingElementEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($feature/ef:measurementRegime) > 1) then local:addMessage('TR.wrongMultiplicityEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($feature/ef:measurementRegime)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -133,6 +140,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -144,14 +153,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/ef:mediaMonitored))) then local:addMessage('TR.missingElementEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (exists($feature/ef:mediaMonitored) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -196,6 +210,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -207,6 +223,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return @@ -218,10 +239,10 @@ let $messages := local:addMessage('TR.wrongMultiplicityEnvFacilities', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (name($feature) = 'ef:ObservingCapability' and count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if ((name($feature/../..) = 'ef:EnvironmentalMonitoringFacility' or name($feature/../..) = 'ef:EnvironmentalMonitoringNetwork') and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) - else if(name($feature) = 'ef:ObservingCapability' and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if ((name($feature/../..) = 'ef:EnvironmentalMonitoringFacility' or name($feature/../..) = 'ef:EnvironmentalMonitoringNetwork') and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) + else if(name($feature) = 'ef:ObservingCapability' and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -256,6 +277,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -267,10 +290,14 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () - + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -302,6 +329,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -313,10 +342,15 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -358,6 +392,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -369,6 +405,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return @@ -380,10 +421,10 @@ let $messages := local:addMessage('TR.wrongMultiplicityEnvFacilities', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (name($feature) = 'ef:ObservingCapability' and count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if ((name($feature/../..) = 'ef:EnvironmentalMonitoringFacility' or name($feature/../..) = 'ef:EnvironmentalMonitoringNetwork') and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) - else if(name($feature) = 'ef:ObservingCapability' and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if ((name($feature/../..) = 'ef:EnvironmentalMonitoringFacility' or name($feature/../..) = 'ef:EnvironmentalMonitoringNetwork') and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) + else if(name($feature) = 'ef:ObservingCapability' and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -418,6 +459,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -429,12 +472,17 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($feature/ef:specialisedEMFType) > 1) then local:addMessage('TR.wrongMultiplicityEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': '0 or 1', 'count': count($feature/ef:specialisedEMFType)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkEnvFacilities', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', diff --git a/data-el/el-ia/ets-el-ia-bsxets.xml b/data-el/el-ia/ets-el-ia-bsxets.xml index 5cabab8fd..3af8f85e2 100644 --- a/data-el/el-ia/ets-el-ia-bsxets.xml +++ b/data-el/el-ia/ets-el-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-02-15T10:30:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-02-15T10:30:00Z + 2023-06-19T09:20:00Z @@ -96,6 +96,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/') or ($x = $urllist)) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -107,6 +109,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return @@ -115,8 +122,8 @@ let $messages := local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if(count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return diff --git a/data-er/er-ia/ets-er-ia-bsxets.xml b/data-er/er-ia/ets-er-ia-bsxets.xml index b75e694e4..6e786a065 100644 --- a/data-er/er-ia/ets-er-ia-bsxets.xml +++ b/data-er/er-ia/ets-er-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-05-17T16:15:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-05-17T16:15:00Z + 2023-06-16T10:40:00Z @@ -83,6 +83,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -94,14 +96,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': '0 or 1', 'count': count($envDom)}) else if (not(count($envDom)=count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -138,6 +145,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -149,6 +158,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -157,8 +171,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom)=count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -196,6 +210,8 @@ let $messagesv := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -207,6 +223,11 @@ let $messagesv := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -215,8 +236,8 @@ let $messagesv := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom)=count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -228,6 +249,8 @@ let $messagesc := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -239,6 +262,11 @@ let $messagesc := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -247,8 +275,8 @@ let $messagesc := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom)=count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages := ($messagesv, $messagesc) @@ -287,6 +315,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -298,6 +328,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -306,8 +341,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom)=count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', diff --git a/data-ge/ge-ia/ets-ge-ia-bsxets.xml b/data-ge/ge-ia/ets-ge-ia-bsxets.xml index 4e4f064e7..da22765b1 100644 --- a/data-ge/ge-ia/ets-ge-ia-bsxets.xml +++ b/data-ge/ge-ia/ets-ge-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 1.0.2 + 1.0.3 Consortium Bilbomatica, Guadaltel y Geograma 2021-01-21T10:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-05-19T08:00:00Z + 2023-06-19T10:20:00Z @@ -82,6 +82,8 @@ let $messagestc := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -93,14 +95,19 @@ let $messagestc := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -115,6 +122,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -126,14 +135,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagessds:= @@ -144,6 +158,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -155,14 +171,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesf:= @@ -173,6 +194,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -184,14 +207,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesagf:= @@ -202,6 +230,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -213,14 +243,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesngf:= @@ -231,6 +266,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -242,14 +279,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return ($messagesgu, $messagessds, $messagesf, $messagesagf, $messagesngf) @@ -293,6 +335,8 @@ let $messagestc := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -304,14 +348,19 @@ let $messagestc := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -326,6 +375,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -337,14 +388,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagessds:= @@ -355,6 +411,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -366,14 +424,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesf:= @@ -384,6 +447,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -395,14 +460,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesagf:= @@ -413,6 +483,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -424,14 +496,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesngf:= @@ -442,6 +519,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -453,14 +532,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return ($messagesgu, $messagessds, $messagesf, $messagesagf, $messagesngf) diff --git a/data-hb/hb-as/ets-hb-as-bsxets.xml b/data-hb/hb-as/ets-hb-as-bsxets.xml index d123f082b..9276f3e15 100644 --- a/data-hb/hb-as/ets-hb-as-bsxets.xml +++ b/data-hb/hb-as/ets-hb-as-bsxets.xml @@ -12,11 +12,11 @@ Source:
  • Conformance Class 'GML application schemas, Habitats and Biotopes'
  • ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-10-21T11:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-10-21T11:00:00Z + 2023-06-20T12:45:00Z @@ -91,7 +91,11 @@ let $messages := let $urls := for $x in $envDom/@xlink:href - return $x + return + if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/') or starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') + else + $x let $map := local:check-resource-uris($urls, 30, true()) let $invalid_urls := @@ -101,6 +105,11 @@ let $messages := return if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/') or starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=http://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if(not(exists($envDom))) then local:addMessage('TR.missingElementHabitatBio', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) @@ -108,7 +117,7 @@ let $messages := local:addMessage('TR.wrongMultiplicityHabitatBio', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHabitatBio', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (exists($envDom) and exists($envDom/@xlink:href) and ($envDom/@xlink:href = $invalid_urls)) then + else if (exists($envDom) and exists($envDom/@xlink:href) and ($envDom/@xlink:href = $invalid_urls_orig)) then local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($envDom/@xlink:href, ',')}) else (local:addMessage('TR.checkManuallyCodeListValue', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($envDom/@xlink:href, ',')})) @@ -302,7 +311,10 @@ let $messages := let $envDom := $feature/hb:referenceSpeciesId let $urls := for $x in $envDom/@xlink:href - return $x + return if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/') or starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') + else + $x let $map := local:check-resource-uris($urls, 30, true()) let $invalid_urls := @@ -312,6 +324,11 @@ let $messages := return if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/') or starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=http://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url @@ -322,9 +339,9 @@ let $messages := local:addMessage('TR.wrongMultiplicityHabitatBio', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not(count($envDom)=count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHabitatBio', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (not(starts-with($envDom/@xlink:href, 'http://www.eu-nomen.eu/portal/taxon.php?GUID=')) and not(starts-with($envDom/@xlink:href, 'https://eunis.eea.europa.eu/species/')) and not($envDom/@xlink:href = $invalid_urls)) then + else if (not(starts-with($envDom/@xlink:href, 'http://www.eu-nomen.eu/portal/taxon.php?GUID=')) and not(starts-with($envDom/@xlink:href, 'https://eunis.eea.europa.eu/species/')) and not($envDom/@xlink:href = $invalid_urls_orig)) then local:addMessage('TR.manual.disallowedCodeListValueHB', map {'property': $property_string, 'value': string($envDom/@xlink:href), 'codelist': $natureCodelist}) - else if($envDom/@xlink:href = $invalid_urls) then + else if($envDom/@xlink:href = $invalid_urls_orig) then let $dummy := "aaa" return if (starts-with($envDom/@xlink:href, 'http://www.eu-nomen.eu/portal/taxon.php?GUID=')) then diff --git a/data-hb/hb-ia/ets-hb-ia-bsxets.xml b/data-hb/hb-ia/ets-hb-ia-bsxets.xml index c6d1c9576..7f2d55981 100644 --- a/data-hb/hb-ia/ets-hb-ia-bsxets.xml +++ b/data-hb/hb-ia/ets-hb-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.1 + 0.1.2 Consortium Bilbomatica, Guadaltel y Geograma 2020-10-23T13:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-02-19T14:00:00Z + 2023-06-15T11:20:00Z @@ -81,6 +81,8 @@ let $messageshs := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,6 +94,11 @@ let $messageshs := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -100,8 +107,8 @@ let $messageshs := local:addMessage('TR.wrongMultiplicityHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not($envDom/@xlink:href)) then local:addMessage('TR.missingAttributeHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesh := @@ -113,6 +120,8 @@ let $messagesh := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -124,6 +133,11 @@ let $messagesh := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -132,8 +146,8 @@ let $messagesh := local:addMessage('TR.wrongMultiplicityHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not($envDom/@xlink:href)) then local:addMessage('TR.missingAttributeHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messageshv := @@ -145,6 +159,8 @@ let $messageshv := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -156,6 +172,11 @@ let $messageshv := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -164,8 +185,8 @@ let $messageshv := local:addMessage('TR.wrongMultiplicityHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not($envDom/@xlink:href)) then local:addMessage('TR.missingAttributeHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHabitatBio', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $combined_messages := ($messageshs, $messagesh,$messageshv) diff --git a/data-hh/hh-as/ets-hh-as-bsxets.xml b/data-hh/hh-as/ets-hh-as-bsxets.xml index 1b699c19c..64d989351 100644 --- a/data-hh/hh-as/ets-hh-as-bsxets.xml +++ b/data-hh/hh-as/ets-hh-as-bsxets.xml @@ -12,11 +12,11 @@ Source:
  • Conformance Class 'GML application schemas, Human Health and Safety'
  • ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-10-15T08:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-10-15T08:00:00Z + 2023-06-20T11:00:00Z @@ -227,6 +227,8 @@ let $messages := return if (starts-with($x, '#')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/') or starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $mapCOD := local:check-resource-uris($urlsCOD, 30, true()) @@ -238,11 +240,18 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_origCOD := for $url in $invalid_urlsCOD + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/') or starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=http://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $urlsPathology := for $x in $envDomPathology/@xlink:href return if (starts-with($x, '#')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/') or starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $mapPathology := local:check-resource-uris($urlsPathology, 30, true()) @@ -254,6 +263,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_origPathology := for $url in $invalid_urlsPathology + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/') or starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=http://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDomCOD)) and not(exists($envDomPathology))) then @@ -264,10 +278,10 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_stringPathology, 'multiplicity': '0 or 1', 'count': count($envDomPathology)}) else if (count($envDomCOD) > 1) then local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_stringCOD, 'multiplicity': '0 or 1', 'count': count($envDomCOD)}) - else if (count($invalid_urlsCOD) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_stringCOD, 'value': string-join($invalid_urlsCOD, ',')}) - else if (count($invalid_urlsPathology) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_stringPathology, 'value': string-join($invalid_urlsPathology, ',')}) + else if (count($invalid_urls_origCOD) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_stringCOD, 'value': string-join($invalid_urls_origCOD, ',')}) + else if (count($invalid_urls_origPathology) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_stringPathology, 'value': string-join($invalid_urls_origPathology, ',')}) else() return (if ($messages) then 'FAILED' else 'PASSED', diff --git a/data-hh/hh-ia/ets-hh-ia-bsxets.xml b/data-hh/hh-ia/ets-hh-ia-bsxets.xml index 5fdae879d..5e5abd53c 100644 --- a/data-hh/hh-ia/ets-hh-ia-bsxets.xml +++ b/data-hh/hh-ia/ets-hh-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-10-14T08:30:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-10-14T08:30:00Z + 2023-06-16T10:00:00Z @@ -85,6 +85,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -96,6 +98,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return @@ -106,8 +113,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -147,6 +154,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -158,6 +167,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $invalid_element_reference := for $x in $envDom/@xlink:href return @@ -174,8 +188,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -215,6 +229,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -226,6 +242,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $invalid_element_reference := for $x in $envDom/@xlink:href return @@ -242,8 +263,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -283,6 +304,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -294,6 +317,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $invalid_element_reference := for $x in $envDom/@xlink:href return @@ -310,8 +338,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -351,6 +379,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -362,6 +392,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $invalid_element_reference := for $x in $envDom/@xlink:href return @@ -378,8 +413,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -419,6 +454,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -430,6 +467,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $invalid_element_reference := for $x in $envDom/@xlink:href return @@ -446,8 +488,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -487,6 +529,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -498,6 +542,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url let $invalid_element_reference := for $x in $envDom/@xlink:href return @@ -514,8 +563,8 @@ let $messages := local:addMessage('TR.wrongMultiplicityHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkHumanHealth', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return diff --git a/data-lc/lc-ia/ets-lc-ia-bsxets.xml b/data-lc/lc-ia/ets-lc-ia-bsxets.xml index 05a2e7f38..66e2530c4 100644 --- a/data-lc/lc-ia/ets-lc-ia-bsxets.xml +++ b/data-lc/lc-ia/ets-lc-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-11-04T14:45:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-11-04T14:45:00Z + 2023-06-19T09:50:00Z @@ -82,6 +82,8 @@ let $messages_lcu := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -93,6 +95,11 @@ let $messages_lcu := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/lcv:class))) then @@ -101,8 +108,8 @@ let $messages_lcu := local:addMessage('TR.wrongMultiplicityLandCover', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($feature/lcv:class)}) else if (exists($feature/lcv:class) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeLandCover', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_lcd := @@ -113,6 +120,8 @@ let $messages_lcd := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -124,6 +133,11 @@ let $messages_lcd := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/lcv:class))) then @@ -132,8 +146,8 @@ let $messages_lcd := local:addMessage('TR.wrongMultiplicityLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($feature/lcv:class)}) else if (exists($feature/lcv:class) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -145,6 +159,8 @@ let $messages_lcu_m := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -156,6 +172,11 @@ let $messages_lcu_m := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/lcv:class))) then @@ -164,8 +185,8 @@ let $messages_lcu_m := local:addMessage('TR.wrongMultiplicityLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($feature/lcv:class)}) else if (exists($feature/lcv:class) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_lcd_m := @@ -176,6 +197,8 @@ let $messages_lcd_m := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -187,6 +210,11 @@ let $messages_lcd_m := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/lcv:class))) then @@ -195,8 +223,8 @@ let $messages_lcd_m := local:addMessage('TR.wrongMultiplicityLandCover', map {'filename': local:filename($feature/../../../../../..), 'featureType':local-name($feature/../../../../../..), 'gmlid': string($feature/../../../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count': count($feature/lcv:class)}) else if (exists($feature/lcv:class) and not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributeLandCover', map {'filename': local:filename($feature/../../../../../..), 'featureType':local-name($feature/../../../../../..), 'gmlid': string($feature/../../../../../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../../../../../..), 'featureType':local-name($feature/../../../../../..), 'gmlid': string($feature/../../../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandCover', map {'filename': local:filename($feature/../../../../../..), 'featureType':local-name($feature/../../../../../..), 'gmlid': string($feature/../../../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages:= ($messages_lcu, $messages_lcd, $messages_lcu_m, $messages_lcd_m) diff --git a/data-lu/lu-ia/ets-lu-ia-bsxets.xml b/data-lu/lu-ia/ets-lu-ia-bsxets.xml index 55db805f8..4191ffffe 100644 --- a/data-lu/lu-ia/ets-lu-ia-bsxets.xml +++ b/data-lu/lu-ia/ets-lu-ia-bsxets.xml @@ -11,11 +11,11 @@ Source:
  • Conformance Class 'Information accessibility'
  • ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-07-02T15:30:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-07-02T15:30:00Z + 2023-06-16T13:45:00Z @@ -76,6 +76,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -87,12 +89,17 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not((count($feature/lunom:orderedList) = count($feature/lunom:orderedList/@xlink:href)))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -125,6 +132,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $mapsv := local:check-resource-uris($urlssv, 30, true()) @@ -136,13 +145,18 @@ let $messages := if ($validurisv = 'notHTTP' or starts-with($validurisv, 'EXCEPTION') or $validurisv = 'idNotFound' or matches($validurisv,'^\d{3}$')) then $urlsv else () + let $invalid_urls_orig := for $url in $invalid_urlssv + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not((count($feature/lunom:specificValue) = count($feature/lunom:specificValue/@xlink:href)))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) else if (count($feature/lunom:specificValue) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': 'PlanTypeNameValue', 'multiplicity': 1, 'count': count($feature/lunom:specificValue)}) - else if(count($invalid_urlssv) > 0) then - local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urlssv, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -175,6 +189,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $mapslu := local:check-resource-uris($urlsslu, 30, true()) @@ -186,9 +202,14 @@ let $messages := if ($validurislu = 'notHTTP' or starts-with($validurislu, 'EXCEPTION') or $validurislu = 'idNotFound' or matches($validurislu,'^\d{3}$')) then $urlslu else () + let $invalid_urls_orig := for $url in $invalid_urlsslu + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if(count($invalid_urlsslu) > 0) then - local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urlsslu, ',')}) + if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else ( ) @@ -222,6 +243,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -233,6 +256,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if(not($feature/plu:planTypeName)) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) @@ -240,8 +268,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': 'PlanTypeNameValue', 'multiplicity': 1, 'count': count($feature/plu:planTypeName)}) else if (not((count($feature/plu:planTypeName)) = count($feature/plu:planTypeName/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -273,6 +301,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -284,11 +314,16 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not($feature/plu:specificSupplementaryRegulation)) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -318,6 +353,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -329,13 +366,18 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not($feature/plu:supplementaryRegulation)) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (not((count($feature/plu:supplementaryRegulation)) = count($feature/plu:supplementaryRegulation/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkLandUse', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', diff --git a/data-mr/mr-ia/ets-mr-ia-bsxets.xml b/data-mr/mr-ia/ets-mr-ia-bsxets.xml index e8f08fd19..d3573327b 100644 --- a/data-mr/mr-ia/ets-mr-ia-bsxets.xml +++ b/data-mr/mr-ia/ets-mr-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-05-13T13:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-05-13T13:00:00Z + 2023-06-15T10:00:00Z @@ -83,6 +83,8 @@ let $messages_co := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -94,6 +96,11 @@ let $messages_co := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -102,8 +109,8 @@ let $messages_co := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_mo := @@ -115,6 +122,8 @@ let $messages_mo := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -126,6 +135,11 @@ let $messages_mo := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -134,8 +148,8 @@ let $messages_mo := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -148,6 +162,8 @@ let $messages_mf := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -159,6 +175,11 @@ let $messages_mf := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -167,8 +188,8 @@ let $messages_mf := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages := ($messages_co, $messages_mo, $messages_mf) @@ -209,6 +230,8 @@ let $messages_co := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -220,14 +243,19 @@ let $messages_co := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_mo := @@ -239,6 +267,8 @@ let $messages_mo := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -250,14 +280,19 @@ let $messages_mo := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -270,6 +305,8 @@ let $messages_mf := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -281,14 +318,19 @@ let $messages_mf := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages := ($messages_co, $messages_mo, $messages_mf) @@ -328,6 +370,8 @@ let $messages_mo := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -339,12 +383,17 @@ let $messages_mo := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -357,6 +406,8 @@ let $messages_mf := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -368,12 +419,17 @@ let $messages_mf := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages := ($messages_mo, $messages_mf) diff --git a/data-nz/nz-ia/ets-nz-ia-bsxets.xml b/data-nz/nz-ia/ets-nz-ia-bsxets.xml index 1c0081c6f..68d457d9e 100644 --- a/data-nz/nz-ia/ets-nz-ia-bsxets.xml +++ b/data-nz/nz-ia/ets-nz-ia-bsxets.xml @@ -11,11 +11,11 @@ Source:
  • Conformance class: 'Information accessibility'
  • ]]> ../../inspire-noggeo-bsxets.xq - 0.1.1 + 0.1.2 Consortium Bilbomatica, Guadaltel y Geograma 2020-08-03T14:30:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2022-12-13T14:30:00Z + 2023-06-16T12:45:00Z @@ -91,6 +91,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -102,6 +104,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/nz-core:typeOfElement/nz-core:ExposedElementClassification))) then () @@ -111,8 +118,8 @@ let $messages := local:addMessage('TR.wrongMultiplicitySpatialRepresentation', map {'filename': local:filename($actual_feature), 'id': string($actual_feature/../@*:id), 'element': 'nz-core:exposedElementCategory'}) else if (not(exists($feature/nz-core:typeOfElement/nz-core:ExposedElementClassification/nz-core:exposedElementCategory/@xlink:href))) then local:addMessage('TR.missingAttributeRiskZone', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -153,6 +160,8 @@ let $messagesee := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -164,14 +173,19 @@ let $messagesee := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/nz-core:specificExposedElementType))) then local:addMessage('TR.missingElementNaturalRiskZone', map {'filename': local:filename($feature/../../../..),'featureType':local-name($feature/../../../..), 'gmlid':string($feature/../../../../@*:id), 'property':'nz-core:specificExposedElementType'}) else if (count($feature/nz-core:specificExposedElementType) != 1) then local:addMessage('TR.wrongMultiplicitySpatialRepresentation', map {'filename': local:filename($feature/../../../..), 'id': string($feature/../../../../@*:id), 'element': 'nz-core:specificExposedElementType'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -186,6 +200,8 @@ let $messagesec := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -197,14 +213,19 @@ let $messagesec := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/nz-core:specificExposedElementType))) then local:addMessage('TR.missingElementNaturalRiskZone', map {'filename': local:filename($feature/../..),'featureType':local-name($feature/../..), 'gmlid':string($feature/../../@*:id), 'property':'nz-core:specificExposedElementType'}) else if (count($feature/nz-core:specificExposedElementType) != 1) then local:addMessage('TR.wrongMultiplicitySpatialRepresentation', map {'filename': local:filename($feature/../..), 'id': string($feature/../../@*:id), 'element': 'nz-core:specificExposedElementType'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -263,6 +284,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -274,6 +297,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (name($feature) = 'nz-core:sourceOfVulnerability' and not(exists($feature/nz-core:NaturalHazardClassification))) then () @@ -283,8 +311,8 @@ let $messages := local:addMessage('TR.wrongMultiplicitySpatialRepresentation', map {'filename': local:filename($actual_feature), 'id': string($actual_feature/../@*:id), 'element': 'nz-core:hazardCategory'}) else if (not(exists($feature/nz-core:NaturalHazardClassification/nz-core:hazardCategory/@xlink:href))) then local:addMessage('TR.missingAttributeRiskZone', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return @@ -339,6 +367,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -350,14 +380,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($feature/nz-core:NaturalHazardClassification/nz-core:specificHazardType))) then local:addMessage('TR.missingElementNaturalRiskZone', map {'filename': local:filename($actual_feature),'featureType':local-name($actual_feature/..), 'gmlid':string($actual_feature/../@*:id), 'property':'nz-core:specificHazardType'}) else if (count($feature/nz-core:NaturalHazardClassification/nz-core:specificHazardType) != 1) then local:addMessage('TR.wrongMultiplicitySpatialRepresentation', map {'filename': local:filename($actual_feature), 'id': string($actual_feature/../@*:id), 'element': 'nz-core:specificHazardType'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkNaturalRiskZones', map {'filename': local:filename($actual_feature), 'featureType':local-name($actual_feature/..), 'gmlid': string($actual_feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return diff --git a/data-of/of-ia/ets-of-ia-bsxets.xml b/data-of/of-ia/ets-of-ia-bsxets.xml index 30b5300d6..d655a0bb4 100644 --- a/data-of/of-ia/ets-of-ia-bsxets.xml +++ b/data-of/of-ia/ets-of-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-05-27T08:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-05-27T08:00:00Z + 2023-06-15T11:50:00Z @@ -81,6 +81,8 @@ let $messagesop := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,14 +94,19 @@ let $messagesop := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messagesm := @@ -110,6 +117,8 @@ let $messagesm := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -121,14 +130,19 @@ let $messagesm := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () diff --git a/data-pd/pd-ia/ets-pd-ia-bsxets.xml b/data-pd/pd-ia/ets-pd-ia-bsxets.xml index a04e2c34b..d663bfa6a 100644 --- a/data-pd/pd-ia/ets-pd-ia-bsxets.xml +++ b/data-pd/pd-ia/ets-pd-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-02-23T14:15:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-02-23T14:15:00Z + 2023-06-15T13:00:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,6 +94,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -100,8 +107,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', @@ -136,6 +143,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -147,6 +156,16 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -155,8 +174,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return (if ($messages) then 'FAILED' else 'PASSED', diff --git a/data-pf/pf-ia/ets-pf-ia-bsxets.xml b/data-pf/pf-ia/ets-pf-ia-bsxets.xml index a2baa9ac8..5453a0a0a 100644 --- a/data-pf/pf-ia/ets-pf-ia-bsxets.xml +++ b/data-pf/pf-ia/ets-pf-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-12-15T10:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-12-15T10:00:00Z + 2023-06-16T12:25:00Z @@ -82,6 +82,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -93,14 +95,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_parts := @@ -112,6 +119,8 @@ let $messages_parts := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -123,14 +132,19 @@ let $messages_parts := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -170,6 +184,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -181,14 +197,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_parts_pi := @@ -199,6 +220,8 @@ let $messages_parts_pi := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -210,14 +233,19 @@ let $messages_parts_pi := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_parts_pf := @@ -228,6 +256,8 @@ let $messages_parts_pf := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -239,6 +269,11 @@ let $messages_parts_pf := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -246,7 +281,7 @@ let $messages_parts_pf := else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityPIF', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../../../..), 'featureType':local-name($feature/../../../..), 'gmlid': string($feature/../../../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -284,6 +319,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -295,14 +332,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttributePIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -340,6 +382,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -351,10 +395,15 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $messages_parts := @@ -366,6 +415,8 @@ let $messages_parts := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -377,10 +428,15 @@ let $messages_parts := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return - if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkPIF', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () let $combined_messages := ($messages, $messages_parts) diff --git a/data-ps/ps-ia/ets-ps-ia-bsxets.xml b/data-ps/ps-ia/ets-ps-ia-bsxets.xml index eb6b66708..65b080801 100644 --- a/data-ps/ps-ia/ets-ps-ia-bsxets.xml +++ b/data-ps/ps-ia/ets-ps-ia-bsxets.xml @@ -12,11 +12,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.2.3 + 0.2.4 interactive instruments GmbH 2016-08-15T00:00:00Z - interactive instruments GmbH - 2017-10-18T13:00:00Z + Consortium Bilbomatica, Guadaltel y Geograma + 2023-06-19T12:35:00Z @@ -75,28 +75,82 @@ Source: NOT_APPLICABLE -let $featuresToInspect := $features[self::*:ProtectedSite] -let $uris := - fn:distinct-values( - for $clv in $featuresToInspect/ps:siteDesignation/*/*[self::ps:designationScheme or self::ps:designation] - return $clv/@xlink:href) (: $clv/@codeSpace || '/' || $clv/text() :) -let $urimap := local:check-resource-uris($uris, 30, true()) -let $errorregex := '(^notHTTP$|^idNotFound$|^EXCEPTION|^\d{3}$)' -let $featuresWithErrors := if (count($uris)=0) then () else - $featuresToInspect[*:siteDesignation/*/*:designationScheme[@xlink:href and matches(map:get($urimap,@xlink:href),$errorregex)] or - *:siteDesignation/*/*:designation[@xlink:href and matches(map:get($urimap,@xlink:href),$errorregex)]][position() le $limitErrors] -return -(if ($featuresWithErrors) then 'FAILED' else if ($features[self::ps3:ProtectedSite]) then 'PASSED_MANUAL' else 'PASSED', - local:error-statistics('TR.featuresWithErrors', count($featuresWithErrors)), - for $feature in $featuresWithErrors - order by $feature/@gml:id - let $values := $feature/*:siteDesignation/*/*:designationScheme[matches(map:get($urimap,@xlink:href),$errorregex)] | - $feature/*:siteDesignation/*/*:designation[matches(map:get($urimap,@xlink:href),$errorregex)] - return - for $value in $values - let $uri := $value/@xlink:href - return local:addMessage('TR.brokenLink', map { 'filename': local:filename($feature), 'featureType': local-name($feature), 'gmlid': string($feature/@gml:id), 'property': local-name($value), 'value': string($value/@xlink:href), 'uri': string($uri) })) - +let $features_selected := $features[ self::*:ProtectedSite ] +let $property_stringd := 'designation' +let $property_stringds := 'designationScheme' +let $messagesd := + + for $feature in $features_selected/ps:siteDesignation/* + let $envDom := $feature/ps:designation + let $urls := + for $x in $envDom/@xlink:href + return + if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then + () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') + else + $x + let $map := local:check-resource-uris($urls, 30, true()) + let $invalid_urls := + for $href in $urls + let $url := string($href) + let $validuri := map:get($map, $url) + return + if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then + $url + else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url + + return + if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_stringd, 'value': string-join($invalid_urls_orig, ',')}) + else () + +let $messagesds := + + for $feature in $features_selected/ps:siteDesignation/* + let $envDom := $feature/ps:designationScheme + let $urls := + for $x in $envDom/@xlink:href + return + if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then + () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') + else + $x + let $map := local:check-resource-uris($urls, 30, true()) + let $invalid_urls := + for $href in $urls + let $url := string($href) + let $validuri := map:get($map, $url) + return + if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then + $url + else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url + + return + if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_stringds, 'value': string-join($invalid_urls_orig, ',')}) + else () + +let $messages := ($messagesd, $messagesds) + +return +(if ($messages) then 'FAILED' else 'PASSED', +local:error-statistics('TR.recordsWithErrors', count(fn:distinct-values($messages//etf:argument[@token='id']/text()))), +$messages) + diff --git a/data-sd/sd-ia/ets-sd-ia-bsxets.xml b/data-sd/sd-ia/ets-sd-ia-bsxets.xml index eac02b0b7..fe69e5d81 100644 --- a/data-sd/sd-ia/ets-sd-ia-bsxets.xml +++ b/data-sd/sd-ia/ets-sd-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.1 + 0.1.2 Consortium Bilbomatica, Guadaltel y Geograma 2020-08-06T14:45:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-03-05T13:15:00Z + 2023-06-16T11:45:00Z @@ -83,6 +83,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -136,6 +138,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -188,6 +192,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -242,6 +248,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -289,6 +297,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) diff --git a/data-so/so-ia/ets-so-ia-bsxets.xml b/data-so/so-ia/ets-so-ia-bsxets.xml index 92863d865..c259dd078 100644 --- a/data-so/so-ia/ets-so-ia-bsxets.xml +++ b/data-so/so-ia/ets-so-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.1 + 0.1.2 Consortium Bilbomatica, Guadaltel y Geograma 2021-05-07T12:15:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-11-25T15:55:00Z + 2023-06-15T11:00:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,6 +94,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -100,8 +107,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': '1', 'count':count($envDom)}) else if (exists($envDom) and not(exists($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (exists($envDom) and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (exists($envDom) and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -140,6 +147,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -151,6 +160,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -159,8 +173,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': '1', 'count':count($envDom)}) else if (exists($envDom) and not(exists($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (exists($envDom) and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (exists($envDom) and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () diff --git a/data-sr/sr-ia/ets-sr-ia-bsxets.xml b/data-sr/sr-ia/ets-sr-ia-bsxets.xml index 62c837f32..39352e726 100644 --- a/data-sr/sr-ia/ets-sr-ia-bsxets.xml +++ b/data-sr/sr-ia/ets-sr-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-02-03T12:30:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-02-03T12:30:00Z + 2023-06-16T09:20:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,14 +94,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': '0 or 1', 'count':count($envDom)}) else if (exists($envDom) and not($envDom/@xlink:href)) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (exists($envDom) and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (exists($envDom) and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -138,6 +145,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -149,14 +158,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElement', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (not($envDom/@xlink:href)) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -195,6 +209,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -206,6 +222,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -214,8 +235,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not($envDom/@xlink:href)) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -254,6 +275,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -265,12 +288,17 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (exists($envDom) and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (exists($envDom) and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -309,6 +337,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -320,11 +350,16 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($envDom) > 1) then - local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/..), 'featureType':local-name($feature/..), 'gmlid': string($feature/../@*:id), 'element': $property_string, 'multiplicity': '0 or 1', 'count':count($envDom)}) - else if (exists($envDom) and count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/..), 'featureType':local-name($feature/..), 'gmlid': string($feature/../@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'element': $property_string, 'multiplicity': '0 or 1', 'count':count($envDom)}) + else if (exists($envDom) and count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature/../..), 'featureType':local-name($feature/../..), 'gmlid': string($feature/../../@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -363,6 +398,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -374,6 +411,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -382,8 +424,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count':count($envDom)}) else if (not($envDom/@xlink:href)) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id),'attribute':'@xlink:href', 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () diff --git a/data-su/su-ia/ets-su-ia-bsxets.xml b/data-su/su-ia/ets-su-ia-bsxets.xml index cfcd4c318..2a6893ffb 100644 --- a/data-su/su-ia/ets-su-ia-bsxets.xml +++ b/data-su/su-ia/ets-su-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2021-04-12T09:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2021-04-12T09:00:00Z + 2023-06-15T12:15:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,6 +94,11 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then @@ -100,8 +107,8 @@ let $messages := local:addMessage('TR.wrongMultiplicity', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'element': $property_string, 'multiplicity': 1, 'count': count($envDom)}) else if (not(count($envDom) = count($envDom/@xlink:href))) then local:addMessage('TR.missingAttribute', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'attribute': 'xlink:href'}) - else if(count($invalid_urls) > 0) then - local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if(count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLink', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () return diff --git a/data-us/us-ia/ets-us-ia-bsxets.xml b/data-us/us-ia/ets-us-ia-bsxets.xml index ce4defcbb..a6ea9ed0e 100644 --- a/data-us/us-ia/ets-us-ia-bsxets.xml +++ b/data-us/us-ia/ets-us-ia-bsxets.xml @@ -13,11 +13,11 @@ Pre-requisite conformance classes: ]]> ../../inspire-noggeo-bsxets.xq - 0.1.0 + 0.1.1 Consortium Bilbomatica, Guadaltel y Geograma 2020-11-25T13:00:00Z Consortium Bilbomatica, Guadaltel y Geograma - 2020-11-25T13:00:00Z + 2023-06-15T12:45:00Z @@ -81,6 +81,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -92,12 +94,17 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': '0 or 1', 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -132,6 +139,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -143,12 +152,17 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -183,6 +197,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -194,14 +210,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else () @@ -238,6 +259,8 @@ let $messages := return if (starts-with($x, 'http://inspire.ec.europa.eu/codelist/')) then () + else if (starts-with($x, 'https://inspire.ec.europa.eu/codelist/')) then + concat('https://inspire.ec.europa.eu/registry/rest?uri=',$x,codepoints-to-string(38),'lang=en', codepoints-to-string(38),'format=jsonc') else $x let $map := local:check-resource-uris($urls, 30, true()) @@ -249,14 +272,19 @@ let $messages := if ($validuri = 'notHTTP' or starts-with($validuri, 'EXCEPTION') or $validuri = 'idNotFound' or matches($validuri,'^\d{3}$')) then $url else () + let $invalid_urls_orig := for $url in $invalid_urls + return if (starts-with($url, 'https://inspire.ec.europa.eu/registry/rest?uri=https://inspire.ec.europa.eu/codelist/')) then + tokenize(substring($url,48), codepoints-to-string(38))[1] + else + $url return if (not(exists($envDom))) then local:addMessage('TR.missingElementUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string}) else if (count($envDom) > 1) then local:addMessage('TR.wrongMultiplicityUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'multiplicity': 1, 'count':count($envDom)}) - else if (count($invalid_urls) > 0) then - local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls, ',')}) + else if (count($invalid_urls_orig) > 0) then + local:addMessage('TR.brokenLinkUtilGovServ', map {'filename': local:filename($feature), 'featureType':local-name($feature), 'gmlid': string($feature/@*:id), 'property': $property_string, 'value': string-join($invalid_urls_orig, ',')}) else ()