Created
October 25, 2023 13:59
-
-
Save epifanio/c34b30444d84c300e2867021b11129fa to your computer and use it in GitHub Desktop.
CSW_QUERY_TESTING
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"id": "500cde8f-c56b-4831-adf5-83a877569ccd", | |
"metadata": {}, | |
"source": [ | |
"# Test CSW QUERY\n", | |
"\n", | |
"the following will run a query by posting an XML file via CURL \n", | |
"\n", | |
"\n", | |
"At the moment the following Query are supported:\n", | |
"* Group A\n", | |
" - `anytext`\n", | |
" - `Time`\n", | |
" - `BBOX`\n", | |
" - `anytext` *on field*\n", | |
"\n", | |
"* Group B\n", | |
" - `anytext` **AND** `Time`\n", | |
" - `anytext` **AND** `BBOX`\n", | |
" - `anytext` **AND** `Time` **AND** `BBOX`\n", | |
" \n", | |
"* Group C\n", | |
" - `anytext` *on field* **AND** `Time`\n", | |
" - `anytext` *on field* **AND** `BBOX`\n", | |
" - `anytext` *on field* **AND** `Time` **AND** `BBOX`\n", | |
"\n", | |
"* Group D\n", | |
" - `Time` **AND** `BBOX`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"id": "03b5a262-259f-43b0-b593-75e6de4129ff", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"from IPython.core.magic import register_line_cell_magic\n", | |
"\n", | |
"@register_line_cell_magic\n", | |
"def writetemplate(line, cell):\n", | |
" with open(line, 'w') as f:\n", | |
" f.write(cell.format(**globals()))" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"id": "1f887993-bed7-4e22-b4ea-969390bfb4a6", | |
"metadata": { | |
"tags": [] | |
}, | |
"outputs": [], | |
"source": [ | |
"csw_test_endpoint = \"https://test.csw.met.no\"\n", | |
"ElementSetName = 'brief'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "a0cb7786-041b-4fc1-805d-527406e8a376", | |
"metadata": {}, | |
"source": [ | |
"## Group A" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "af0c136e-6f8f-42f4-9549-2cf89faf79e7", | |
"metadata": {}, | |
"source": [ | |
"### `anytext`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"id": "6b55f008-fd4f-4521-a1cd-6bb0cb4ce651", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>apiso:AnyText</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"id": "37db4d9c-f080-4bc6-a465-5ff41f83a7ad", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"135751\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "20bb5911-8887-481e-bb5d-400604aa1f12", | |
"metadata": {}, | |
"source": [ | |
"### `Time`\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"id": "c32bff78-4000-48f3-ab1c-7db3f268d693", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_time.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2020-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2018-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"id": "2547d50b-5bb5-4ae5-8230-7389383496b7", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n", | |
"<!-- pycsw 3.0.dev0 -->\n", | |
"<csw:GetRecordsResponse xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:dct=\"http://purl.org/dc/terms/\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gml32=\"http://www.opengis.net/gml/3.2\" xmlns:ows=\"http://www.opengis.net/ows\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:gco=\"http://www.isotc211.org/2005/gco\" version=\"2.0.2\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\">\n", | |
" <csw:SearchStatus timestamp=\"2023-10-25T13:55:52Z\"/>\n", | |
" <csw:SearchResults numberOfRecordsMatched=\"68226\" numberOfRecordsReturned=\"5\" nextRecord=\"6\" recordSchema=\"http://www.isotc211.org/2005/gmd\" elementSet=\"brief\">\n", | |
" <gmd:MD_Metadata xsi:schemaLocation=\"http://www.isotc211.org/2005/gmd http://schemas.opengis.net/csw/2.0.2/profiles/apiso/1.0.0/apiso.xsd\">\n", | |
" <gmd:fileIdentifier>\n", | |
" <gco:CharacterString>b153b660-6726-4b2c-8fff-1a98cdb6cfe2</gco:CharacterString>\n", | |
" </gmd:fileIdentifier>\n", | |
" <gmd:hierarchyLevel>\n", | |
" <gmd:MD_ScopeCode codeSpace=\"ISOTC211/19115\" codeList=\"http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode\" codeListValue=\"dataset\">dataset</gmd:MD_ScopeCode>\n", | |
" </gmd:hierarchyLevel>\n", | |
" <gmd:identificationInfo>\n", | |
" <gmd:MD_DataIdentification id=\"b153b660-6726-4b2c-8fff-1a98cdb6cfe2\">\n", | |
" <gmd:citation>\n", | |
" <gmd:CI_Citation>\n", | |
" <gmd:title>\n", | |
" <gco:CharacterString>Laser scanning of ice rubble (Isfjorden,Svalbard - 9 April 2020)</gco:CharacterString>\n", | |
" </gmd:title>\n", | |
" </gmd:CI_Citation>\n", | |
" </gmd:citation>\n", | |
" <gmd:extent>\n", | |
" <gmd:EX_Extent>\n", | |
" <gmd:geographicElement>\n", | |
" <gmd:EX_GeographicBoundingBox>\n", | |
" <gmd:westBoundLongitude>\n", | |
" <gco:Decimal>15.36</gco:Decimal>\n", | |
" </gmd:westBoundLongitude>\n", | |
" <gmd:eastBoundLongitude>\n", | |
" <gco:Decimal>15.38</gco:Decimal>\n", | |
" </gmd:eastBoundLongitude>\n", | |
" <gmd:southBoundLatitude>\n", | |
" <gco:Decimal>78.24</gco:Decimal>\n", | |
" </gmd:southBoundLatitude>\n", | |
" <gmd:northBoundLatitude>\n", | |
" <gco:Decimal>78.25</gco:Decimal>\n", | |
" </gmd:northBoundLatitude>\n", | |
" </gmd:EX_GeographicBoundingBox>\n", | |
" </gmd:geographicElement>\n", | |
" </gmd:EX_Extent>\n", | |
" </gmd:extent>\n", | |
" </gmd:MD_DataIdentification>\n", | |
" </gmd:identificationInfo>\n", | |
" <gmd:distributionInfo>\n", | |
" <gmd:MD_Distribution>\n", | |
" <gmd:transferOptions>\n", | |
" <gmd:MD_DigitalTransferOptions>\n", | |
" <gmd:onLine>\n", | |
" <gmd:CI_OnlineResource>\n", | |
" <gmd:linkage>\n", | |
" <gmd:URL>https://api.npolar.no/dataset/b153b660-6726-4b2c-8fff-1a98cdb6cfe2/_file/_all/?filename=&format=zip</gmd:URL>\n", | |
" </gmd:linkage>\n", | |
" <gmd:protocol>\n", | |
" <gco:CharacterString>WWW:DOWNLOAD-1.0-http--download</gco:CharacterString>\n", | |
" </gmd:protocol>\n", | |
" <gmd:name>\n", | |
" <gco:CharacterString>File for download</gco:CharacterString>\n", | |
" </gmd:name>\n", | |
" <gmd:description>\n", | |
" <gco:CharacterString>Direct HTTP download</gco:CharacterString>\n", | |
" </gmd:description>\n", | |
" </gmd:CI_OnlineResource>\n", | |
" </gmd:onLine>\n", | |
" </gmd:MD_DigitalTransferOptions>\n", | |
" </gmd:transferOptions>\n", | |
" </gmd:MD_Distribution>\n", | |
" </gmd:distributionInfo>\n", | |
" </gmd:MD_Metadata>\n", | |
" <gmd:MD_Metadata xsi:schemaLocation=\"http://www.isotc211.org/2005/gmd http://schemas.opengis.net/csw/2.0.2/profiles/apiso/1.0.0/apiso.xsd\">\n", | |
" <gmd:fileIdentifier>\n", | |
" <gco:CharacterString>5168ad7f-4733-45fd-87bd-4c4c4c217876</gco:CharacterString>\n", | |
" </gmd:fileIdentifier>\n", | |
" <gmd:hierarchyLevel>\n", | |
" <gmd:MD_ScopeCode codeSpace=\"ISOTC211/19115\" codeList=\"http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode\" codeListValue=\"dataset\">dataset</gmd:MD_ScopeCode>\n", | |
" </gmd:hierarchyLevel>\n", | |
" <gmd:identificationInfo>\n", | |
" <gmd:MD_DataIdentification id=\"5168ad7f-4733-45fd-87bd-4c4c4c217876\">\n", | |
" <gmd:citation>\n", | |
" <gmd:CI_Citation>\n", | |
" <gmd:title>\n", | |
" <gco:CharacterString>Southern Ocean Ecosystem cruise 2019 marine birds and mammals observations</gco:CharacterString>\n", | |
" </gmd:title>\n", | |
" </gmd:CI_Citation>\n", | |
" </gmd:citation>\n", | |
" <gmd:extent>\n", | |
" <gmd:EX_Extent>\n", | |
" <gmd:geographicElement>\n", | |
" <gmd:EX_GeographicBoundingBox>\n", | |
" <gmd:westBoundLongitude>\n", | |
" <gco:Decimal>-65.0</gco:Decimal>\n", | |
" </gmd:westBoundLongitude>\n", | |
" <gmd:eastBoundLongitude>\n", | |
" <gco:Decimal>20.0</gco:Decimal>\n", | |
" </gmd:eastBoundLongitude>\n", | |
" <gmd:southBoundLatitude>\n", | |
" <gco:Decimal>-71.0</gco:Decimal>\n", | |
" </gmd:southBoundLatitude>\n", | |
" <gmd:northBoundLatitude>\n", | |
" <gco:Decimal>-32.0</gco:Decimal>\n", | |
" </gmd:northBoundLatitude>\n", | |
" </gmd:EX_GeographicBoundingBox>\n", | |
" </gmd:geographicElement>\n", | |
" </gmd:EX_Extent>\n", | |
" </gmd:extent>\n", | |
" </gmd:MD_DataIdentification>\n", | |
" </gmd:identificationInfo>\n", | |
" <gmd:distributionInfo>\n", | |
" <gmd:MD_Distribution>\n", | |
" <gmd:transferOptions>\n", | |
" <gmd:MD_DigitalTransferOptions>\n", | |
" <gmd:onLine>\n", | |
" <gmd:CI_OnlineResource>\n", | |
" <gmd:linkage>\n", | |
" <gmd:URL>https://api.npolar.no/dataset/5168ad7f-4733-45fd-87bd-4c4c4c217876/_file/_all/?filename=&format=zip</gmd:URL>\n", | |
" </gmd:linkage>\n", | |
" <gmd:protocol>\n", | |
" <gco:CharacterString>WWW:DOWNLOAD-1.0-http--download</gco:CharacterString>\n", | |
" </gmd:protocol>\n", | |
" <gmd:name>\n", | |
" <gco:CharacterString>File for download</gco:CharacterString>\n", | |
" </gmd:name>\n", | |
" <gmd:description>\n", | |
" <gco:CharacterString>Direct HTTP download</gco:CharacterString>\n", | |
" </gmd:description>\n", | |
" </gmd:CI_OnlineResource>\n", | |
" </gmd:onLine>\n", | |
" </gmd:MD_DigitalTransferOptions>\n", | |
" </gmd:transferOptions>\n", | |
" </gmd:MD_Distribution>\n", | |
" </gmd:distributionInfo>\n", | |
" </gmd:MD_Metadata>\n", | |
" <gmd:MD_Metadata xsi:schemaLocation=\"http://www.isotc211.org/2005/gmd http://schemas.opengis.net/csw/2.0.2/profiles/apiso/1.0.0/apiso.xsd\">\n", | |
" <gmd:fileIdentifier>\n", | |
" <gco:CharacterString>28fbddd2-0fb2-41c9-9f42-60146e28617f</gco:CharacterString>\n", | |
" </gmd:fileIdentifier>\n", | |
" <gmd:hierarchyLevel>\n", | |
" <gmd:MD_ScopeCode codeSpace=\"ISOTC211/19115\" codeList=\"http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode\" codeListValue=\"dataset\">dataset</gmd:MD_ScopeCode>\n", | |
" </gmd:hierarchyLevel>\n", | |
" <gmd:identificationInfo>\n", | |
" <gmd:MD_DataIdentification id=\"28fbddd2-0fb2-41c9-9f42-60146e28617f\">\n", | |
" <gmd:citation>\n", | |
" <gmd:CI_Citation>\n", | |
" <gmd:title>\n", | |
" <gco:CharacterString>Southern Ocean Ecosystem cruise 2019 biogeochemistry</gco:CharacterString>\n", | |
" </gmd:title>\n", | |
" </gmd:CI_Citation>\n", | |
" </gmd:citation>\n", | |
" <gmd:extent>\n", | |
" <gmd:EX_Extent>\n", | |
" <gmd:geographicElement>\n", | |
" <gmd:EX_GeographicBoundingBox>\n", | |
" <gmd:westBoundLongitude>\n", | |
" <gco:Decimal>-3.0</gco:Decimal>\n", | |
" </gmd:westBoundLongitude>\n", | |
" <gmd:eastBoundLongitude>\n", | |
" <gco:Decimal>15.0</gco:Decimal>\n", | |
" </gmd:eastBoundLongitude>\n", | |
" <gmd:southBoundLatitude>\n", | |
" <gco:Decimal>-71.0</gco:Decimal>\n", | |
" </gmd:southBoundLatitude>\n", | |
" <gmd:northBoundLatitude>\n", | |
" <gco:Decimal>-62.0</gco:Decimal>\n", | |
" </gmd:northBoundLatitude>\n", | |
" </gmd:EX_GeographicBoundingBox>\n", | |
" </gmd:geographicElement>\n", | |
" </gmd:EX_Extent>\n", | |
" </gmd:extent>\n", | |
" </gmd:MD_DataIdentification>\n", | |
" </gmd:identificationInfo>\n", | |
" <gmd:distributionInfo>\n", | |
" <gmd:MD_Distribution>\n", | |
" <gmd:transferOptions>\n", | |
" <gmd:MD_DigitalTransferOptions>\n", | |
" <gmd:onLine>\n", | |
" <gmd:CI_OnlineResource>\n", | |
" <gmd:linkage>\n", | |
" <gmd:URL>https://api.npolar.no/dataset/28fbddd2-0fb2-41c9-9f42-60146e28617f/_file/_all/?filename=&format=zip</gmd:URL>\n", | |
" </gmd:linkage>\n", | |
" <gmd:protocol>\n", | |
" <gco:CharacterString>WWW:DOWNLOAD-1.0-http--download</gco:CharacterString>\n", | |
" </gmd:protocol>\n", | |
" <gmd:name>\n", | |
" <gco:CharacterString>File for download</gco:CharacterString>\n", | |
" </gmd:name>\n", | |
" <gmd:description>\n", | |
" <gco:CharacterString>Direct HTTP download</gco:CharacterString>\n", | |
" </gmd:description>\n", | |
" </gmd:CI_OnlineResource>\n", | |
" </gmd:onLine>\n", | |
" </gmd:MD_DigitalTransferOptions>\n", | |
" </gmd:transferOptions>\n", | |
" </gmd:MD_Distribution>\n", | |
" </gmd:distributionInfo>\n", | |
" </gmd:MD_Metadata>\n", | |
" <gmd:MD_Metadata xsi:schemaLocation=\"http://www.isotc211.org/2005/gmd http://schemas.opengis.net/csw/2.0.2/profiles/apiso/1.0.0/apiso.xsd\">\n", | |
" <gmd:fileIdentifier>\n", | |
" <gco:CharacterString>5e510f85-29e1-42c3-89a5-8766f5c5948c</gco:CharacterString>\n", | |
" </gmd:fileIdentifier>\n", | |
" <gmd:hierarchyLevel>\n", | |
" <gmd:MD_ScopeCode codeSpace=\"ISOTC211/19115\" codeList=\"http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode\" codeListValue=\"dataset\">dataset</gmd:MD_ScopeCode>\n", | |
" </gmd:hierarchyLevel>\n", | |
" <gmd:identificationInfo>\n", | |
" <gmd:MD_DataIdentification id=\"5e510f85-29e1-42c3-89a5-8766f5c5948c\">\n", | |
" <gmd:citation>\n", | |
" <gmd:CI_Citation>\n", | |
" <gmd:title>\n", | |
" <gco:CharacterString>Southern Ocean Ecosystem cruise 2019 vertical in situ chlorophyll a profiles</gco:CharacterString>\n", | |
" </gmd:title>\n", | |
" </gmd:CI_Citation>\n", | |
" </gmd:citation>\n", | |
" <gmd:extent>\n", | |
" <gmd:EX_Extent>\n", | |
" <gmd:geographicElement>\n", | |
" <gmd:EX_GeographicBoundingBox>\n", | |
" <gmd:westBoundLongitude>\n", | |
" <gco:Decimal>-3.0</gco:Decimal>\n", | |
" </gmd:westBoundLongitude>\n", | |
" <gmd:eastBoundLongitude>\n", | |
" <gco:Decimal>15.0</gco:Decimal>\n", | |
" </gmd:eastBoundLongitude>\n", | |
" <gmd:southBoundLatitude>\n", | |
" <gco:Decimal>-71.0</gco:Decimal>\n", | |
" </gmd:southBoundLatitude>\n", | |
" <gmd:northBoundLatitude>\n", | |
" <gco:Decimal>-62.0</gco:Decimal>\n", | |
" </gmd:northBoundLatitude>\n", | |
" </gmd:EX_GeographicBoundingBox>\n", | |
" </gmd:geographicElement>\n", | |
" </gmd:EX_Extent>\n", | |
" </gmd:extent>\n", | |
" </gmd:MD_DataIdentification>\n", | |
" </gmd:identificationInfo>\n", | |
" <gmd:distributionInfo>\n", | |
" <gmd:MD_Distribution>\n", | |
" <gmd:transferOptions>\n", | |
" <gmd:MD_DigitalTransferOptions>\n", | |
" <gmd:onLine>\n", | |
" <gmd:CI_OnlineResource>\n", | |
" <gmd:linkage>\n", | |
" <gmd:URL>https://api.npolar.no/dataset/5e510f85-29e1-42c3-89a5-8766f5c5948c/_file/_all/?filename=&format=zip</gmd:URL>\n", | |
" </gmd:linkage>\n", | |
" <gmd:protocol>\n", | |
" <gco:CharacterString>WWW:DOWNLOAD-1.0-http--download</gco:CharacterString>\n", | |
" </gmd:protocol>\n", | |
" <gmd:name>\n", | |
" <gco:CharacterString>File for download</gco:CharacterString>\n", | |
" </gmd:name>\n", | |
" <gmd:description>\n", | |
" <gco:CharacterString>Direct HTTP download</gco:CharacterString>\n", | |
" </gmd:description>\n", | |
" </gmd:CI_OnlineResource>\n", | |
" </gmd:onLine>\n", | |
" </gmd:MD_DigitalTransferOptions>\n", | |
" </gmd:transferOptions>\n", | |
" </gmd:MD_Distribution>\n", | |
" </gmd:distributionInfo>\n", | |
" </gmd:MD_Metadata>\n", | |
" <gmd:MD_Metadata xsi:schemaLocation=\"http://www.isotc211.org/2005/gmd http://schemas.opengis.net/csw/2.0.2/profiles/apiso/1.0.0/apiso.xsd\">\n", | |
" <gmd:fileIdentifier>\n", | |
" <gco:CharacterString>5066a075-fcbe-4252-92ec-f392d531348f</gco:CharacterString>\n", | |
" </gmd:fileIdentifier>\n", | |
" <gmd:hierarchyLevel>\n", | |
" <gmd:MD_ScopeCode codeSpace=\"ISOTC211/19115\" codeList=\"http://www.isotc211.org/2005/resources/Codelist/gmxCodelists.xml#MD_ScopeCode\" codeListValue=\"dataset\">dataset</gmd:MD_ScopeCode>\n", | |
" </gmd:hierarchyLevel>\n", | |
" <gmd:identificationInfo>\n", | |
" <gmd:MD_DataIdentification id=\"5066a075-fcbe-4252-92ec-f392d531348f\">\n", | |
" <gmd:citation>\n", | |
" <gmd:CI_Citation>\n", | |
" <gmd:title>\n", | |
" <gco:CharacterString>CTD profiles from NPI cruise FS2019 to the Fram Strait including auxiliary sensors</gco:CharacterString>\n", | |
" </gmd:title>\n", | |
" </gmd:CI_Citation>\n", | |
" </gmd:citation>\n", | |
" <gmd:extent>\n", | |
" <gmd:EX_Extent>\n", | |
" <gmd:geographicElement>\n", | |
" <gmd:EX_GeographicBoundingBox>\n", | |
" <gmd:westBoundLongitude>\n", | |
" <gco:Decimal>-17.24</gco:Decimal>\n", | |
" </gmd:westBoundLongitude>\n", | |
" <gmd:eastBoundLongitude>\n", | |
" <gco:Decimal>9.99</gco:Decimal>\n", | |
" </gmd:eastBoundLongitude>\n", | |
" <gmd:southBoundLatitude>\n", | |
" <gco:Decimal>77.88</gco:Decimal>\n", | |
" </gmd:southBoundLatitude>\n", | |
" <gmd:northBoundLatitude>\n", | |
" <gco:Decimal>78.85</gco:Decimal>\n", | |
" </gmd:northBoundLatitude>\n", | |
" </gmd:EX_GeographicBoundingBox>\n", | |
" </gmd:geographicElement>\n", | |
" </gmd:EX_Extent>\n", | |
" </gmd:extent>\n", | |
" </gmd:MD_DataIdentification>\n", | |
" </gmd:identificationInfo>\n", | |
" <gmd:distributionInfo>\n", | |
" <gmd:MD_Distribution>\n", | |
" <gmd:transferOptions>\n", | |
" <gmd:MD_DigitalTransferOptions>\n", | |
" <gmd:onLine>\n", | |
" <gmd:CI_OnlineResource>\n", | |
" <gmd:linkage>\n", | |
" <gmd:URL>https://api.npolar.no/dataset/5066a075-fcbe-4252-92ec-f392d531348f/_file/_all/?filename=&format=zip</gmd:URL>\n", | |
" </gmd:linkage>\n", | |
" <gmd:protocol>\n", | |
" <gco:CharacterString>WWW:DOWNLOAD-1.0-http--download</gco:CharacterString>\n", | |
" </gmd:protocol>\n", | |
" <gmd:name>\n", | |
" <gco:CharacterString>File for download</gco:CharacterString>\n", | |
" </gmd:name>\n", | |
" <gmd:description>\n", | |
" <gco:CharacterString>Direct HTTP download</gco:CharacterString>\n", | |
" </gmd:description>\n", | |
" </gmd:CI_OnlineResource>\n", | |
" </gmd:onLine>\n", | |
" </gmd:MD_DigitalTransferOptions>\n", | |
" </gmd:transferOptions>\n", | |
" </gmd:MD_Distribution>\n", | |
" </gmd:distributionInfo>\n", | |
" </gmd:MD_Metadata>\n", | |
" </csw:SearchResults>\n", | |
"</csw:GetRecordsResponse>\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_time.xml {csw_test_endpoint} #| grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "c70cf52f-e5ff-4f86-9c07-17d01fa9b0ed", | |
"metadata": {}, | |
"source": [ | |
"### `BBOX`\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"id": "a4e4e73a-914d-4b2a-93eb-6b98d64f4a5d", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_bbox.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>apiso:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>60 0</gml:lowerCorner>\n", | |
" <gml:upperCorner>90 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"id": "0840ed5f-5384-4a55-a69b-6f12a4392571", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"6449\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_bbox.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "a81a2130-91b9-4511-bf5c-982dd42fc1bd", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` *on field*\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 9, | |
"id": "51e947dd-46b0-4d8a-acff-33fdae7e3e84", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext_on_field.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>dc:title</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"id": "164bd674-3c72-4a42-b6f7-4386a0bb0ec7", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"58975\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_on_field.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "0155eb67-2c37-4c02-b6e1-f90fc192569e", | |
"metadata": {}, | |
"source": [ | |
"## Group B" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "3e6b7a19-5d52-454e-8b31-d5a067a496f2", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` **AND** `Time`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"id": "01a62227-9258-4d9e-95a8-7d27857b49d9", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext_AND_time.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>apiso:AnyText</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2020-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2018-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"id": "ab1c827d-e1b4-4335-aad7-826cc76c30ac", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"62042\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_AND_time.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "ea156050-49aa-40fa-aac9-0b909b3f0fc1", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` **AND** `BBOX`\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 13, | |
"id": "ca5622da-741c-43e9-9703-ef5d0b41eefd", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext_AND_BBOX.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>apiso:AnyText</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>apiso:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>60 0</gml:lowerCorner>\n", | |
" <gml:upperCorner>90 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 14, | |
"id": "f4746b80-2b86-4b02-89e5-4ee136485c85", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"6365\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_AND_BBOX.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "9e5472bf-84a6-4ab7-be92-426ab4e59de2", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` **AND** `Time` **AND** `BBOX`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 15, | |
"id": "c25aaf95-fb5c-458c-8af5-f617b33b2cf9", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext_AND_time_AND_BBOX.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>apiso:AnyText</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>apiso:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>60 0</gml:lowerCorner>\n", | |
" <gml:upperCorner>90 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2020-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2018-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 16, | |
"id": "9fe7fecd-90a1-400a-a020-9fa7abad5e4b", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"6287\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_AND_time_AND_BBOX.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "5e295d32-2c4f-4b29-8d75-2de85f19b354", | |
"metadata": {}, | |
"source": [ | |
"## Group C" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "1000fbad-748c-4e69-93a5-433673a9e983", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` *on field* **AND** `Time`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 17, | |
"id": "de317953-76af-4973-a6b7-b65ea6990082", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext_on_field_AND_time.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>dc:title</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2020-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2018-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 18, | |
"id": "73525be8-58fc-4226-94d0-aa73d4525125", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"28548\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_on_field_AND_time.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "594f4263-848d-4c3e-a2f8-9d2e54646fc4", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` *on field* **AND** `BBOX`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 19, | |
"id": "29afb534-2428-49ab-8978-df9c6adf126a", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Overwriting test_xml_query_anytext_on_field_AND_BBOX.xml\n" | |
] | |
} | |
], | |
"source": [ | |
"%%file test_xml_query_anytext_on_field_AND_BBOX.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>full</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>dc:title</ogc:PropertyName>\n", | |
" <ogc:Literal>whale</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>apiso:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>60 0</gml:lowerCorner>\n", | |
" <gml:upperCorner>90 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 20, | |
"id": "34406798-5dd5-4335-8afc-c289dfc2e6fc", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"1\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_on_field_AND_BBOX.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "88c41576-50e7-49a3-961d-e25338ceb614", | |
"metadata": {}, | |
"source": [ | |
"### `anytext` *on field* **AND** `Time` **AND** `BBOX`" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 21, | |
"id": "0685c4d6-57a5-4fd8-bb4f-4a4f594a805f", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_anytext_on_field_AND_Time_AND_BBOX.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>dc:title</ogc:PropertyName>\n", | |
" <ogc:Literal>whale</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>apiso:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>60 0</gml:lowerCorner>\n", | |
" <gml:upperCorner>90 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2023-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2000-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 22, | |
"id": "36480e82-e959-4015-90ae-f146cc464390", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"1\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_anytext_on_field_AND_Time_AND_BBOX.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "0cae6683-c605-4d7f-8d1e-187d977bd89b", | |
"metadata": {}, | |
"source": [ | |
"## Group D" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "d382f8e7-4d50-464e-9bfc-eebecbceeb5f", | |
"metadata": {}, | |
"source": [ | |
"### Time AND BBOX" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 23, | |
"id": "48d74090-2533-476f-a581-91f380df1cf2", | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"%%writetemplate test_xml_query_Time_AND_BBOX.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>{ElementSetName}</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>apiso:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>60 0</gml:lowerCorner>\n", | |
" <gml:upperCorner>90 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2023-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2000-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 24, | |
"id": "793e1f5b-622a-4f9b-a21b-bc44b5d7e4e8", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"6422\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @test_xml_query_Time_AND_BBOX.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "4fabe9bb-6261-4d9e-abf6-90d0ceb009a8", | |
"metadata": {}, | |
"source": [ | |
"# Failing Query \n", | |
"\n", | |
"the following is expected to fail (has multiple BBOX, which we do not have implemented)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 25, | |
"id": "709dd184-6701-489e-9a95-455b00ea2672", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Overwriting query6.xml\n" | |
] | |
} | |
], | |
"source": [ | |
"%%file query6.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>brief</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLike wildCard=\"*\" singleChar=\"?\" escapeChar=\"\\\\\" matchCase=\"false\">\n", | |
" <ogc:PropertyName>dc:title</ogc:PropertyName>\n", | |
" <ogc:Literal>ice</ogc:Literal>\n", | |
" </ogc:PropertyIsLike>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2020-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2018-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:Or>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>5.0721 17.8247</gml:lowerCorner>\n", | |
" <gml:upperCorner>31.7842 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>15.0721 -180</gml:lowerCorner>\n", | |
" <gml:upperCorner>31.7842 -151.2378</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" </ogc:Or>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 26, | |
"id": "f290fdfc-9ec4-4f1a-9a6f-3139eec7cdbf", | |
"metadata": { | |
"scrolled": true | |
}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"28548\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @query6.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"id": "44498862-96d7-4ee4-b0b5-8e42687aeb5c", | |
"metadata": {}, | |
"source": [ | |
"This is expected to fail but instead returns all records in a time slice (BBOX is ignored)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 27, | |
"id": "90ebcd2c-463c-4114-acd6-40f9719e2940", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Overwriting query8.xml\n" | |
] | |
} | |
], | |
"source": [ | |
"%%file query8.xml\n", | |
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" standalone=\"no\"?>\n", | |
"<csw:GetRecords xmlns:apiso=\"http://www.opengis.net/cat/csw/apiso/1.0\" xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\" service=\"CSW\" version=\"2.0.2\" resultType=\"results\" startPosition=\"1\" maxRecords=\"5\" outputFormat=\"application/xml\" outputSchema=\"http://www.isotc211.org/2005/gmd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\" xmlns:gml=\"http://www.opengis.net/gml\" xmlns:gmd=\"http://www.isotc211.org/2005/gmd\">\n", | |
" <csw:Query typeNames=\"gmd:MD_Metadata\">\n", | |
" <csw:ElementSetName>brief</csw:ElementSetName>\n", | |
" <csw:Constraint version=\"1.1.0\">\n", | |
" <ogc:Filter>\n", | |
" <ogc:And>\n", | |
" <ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_begin</ogc:PropertyName>\n", | |
" <ogc:Literal>2020-10-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsLessThanOrEqualTo>\n", | |
" <ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:PropertyName>apiso:TempExtent_end</ogc:PropertyName>\n", | |
" <ogc:Literal>2018-09-18 09:00</ogc:Literal>\n", | |
" </ogc:PropertyIsGreaterThanOrEqualTo>\n", | |
" <ogc:Or>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>5.0721 17.8247</gml:lowerCorner>\n", | |
" <gml:upperCorner>31.7842 180</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" <ogc:BBOX>\n", | |
" <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>\n", | |
" <gml:Envelope>\n", | |
" <gml:lowerCorner>15.0721 -180</gml:lowerCorner>\n", | |
" <gml:upperCorner>31.7842 -151.2378</gml:upperCorner>\n", | |
" </gml:Envelope>\n", | |
" </ogc:BBOX>\n", | |
" </ogc:Or>\n", | |
" </ogc:And>\n", | |
" </ogc:Filter>\n", | |
" </csw:Constraint>\n", | |
" </csw:Query>\n", | |
"</csw:GetRecords>" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 29, | |
"id": "51750021-ae99-4d55-9f10-350e66a8e5bf", | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"68226\n" | |
] | |
} | |
], | |
"source": [ | |
"!curl -s -H \"Content-Type: text/xml\" -X POST -d @query8.xml {csw_test_endpoint} | grep -oP 'numberOfRecordsMatched=\"\\K[^\"]+'\n" | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 3 (ipykernel)", | |
"language": "python", | |
"name": "python3" | |
}, | |
"language_info": { | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"file_extension": ".py", | |
"mimetype": "text/x-python", | |
"name": "python", | |
"nbconvert_exporter": "python", | |
"pygments_lexer": "ipython3", | |
"version": "3.11.6" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 5 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment