Line 1: |
Line 1: |
| <multilang>@en| | | <multilang>@en| |
| | | |
− | [[Earth_Observation_Data_Management_System_(EODMS)|EODMS]] has several options for API Access and automation i.e. Machine 2 Machine. | + | == Overview == |
| + | |
| + | [[Earth_Observation_Data_Management_System_(EODMS)|EODMS]] has several options for search and download API access as well as automation i.e. Machine 2 Machine. |
| | | |
| As part of the [https://www.tbs-sct.gc.ca/pol/doc-eng.aspx?id=28108 Directive on Open Government], the Government of Canada is committed to improving its [https://twitter.com/hashtag/opendata?lang=en #OpenData] posture. EODMS API access aims to promote practices per the [https://www.canada.ca/en/government/system/digital-government/modern-emerging-technologies/government-canada-standards-apis.html GC Standards on APIs] | | As part of the [https://www.tbs-sct.gc.ca/pol/doc-eng.aspx?id=28108 Directive on Open Government], the Government of Canada is committed to improving its [https://twitter.com/hashtag/opendata?lang=en #OpenData] posture. EODMS API access aims to promote practices per the [https://www.canada.ca/en/government/system/digital-government/modern-emerging-technologies/government-canada-standards-apis.html GC Standards on APIs] |
Line 59: |
Line 61: |
| == OGC APIs== | | == OGC APIs== |
| | | |
− | The following is a complete end-to-end sample to use OGC APIs | + | The following are usage samples of EODMS' OGC APIs with a full [https://github.com/nrcan-eodms-sgdot-rncan/eodms-ogc-client-py/wiki open source Python module on GitHub] |
| | | |
| === Discover some data / CSW GetRecords === | | === Discover some data / CSW GetRecords === |
Line 73: |
Line 75: |
| <code style="background-color:#EEFFCC; border-color:#AACC99">https://www.eodms-sgdot.nrcan-rncan.gc.ca/MetaManagerCSW/csw/RCMImageProducts</code> | | <code style="background-color:#EEFFCC; border-color:#AACC99">https://www.eodms-sgdot.nrcan-rncan.gc.ca/MetaManagerCSW/csw/RCMImageProducts</code> |
| | | |
− | HTTP POST - HEADER | + | HTTP POST - HEADER (No Username/Password) |
| | | |
| <pre style="background-color:#EEFFCC; border-color:#AACC99"> | | <pre style="background-color:#EEFFCC; border-color:#AACC99"> |
| + | <csw:GetRecords service='CSW' version='2.0.2' maxRecords='10' startPosition='1' resultType='results' |
| + | 	outputFormat='application/xml' outputSchema='http://www.opengis.net/cat/csw/2.0.2' |
| + | 	xmlns='http://www.opengis.net/cat/csw/2.0.2' xmlns:csw='http://www.opengis.net/cat/csw/2.0.2' |
| + | 	xmlns:ogc='http://www.opengis.net/ogc' xmlns:ows='http://www.opengis.net/ows' |
| + | 	xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:dct='http://purl.org/dc/terms/' |
| + | 	xmlns:gml='http://www.opengis.net/gml' 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'> |
| + | 	<csw:Query typeNames='csw:Record'> |
| + | 		<csw:ElementSetName typeNames='csw:Record'>summary</csw:ElementSetName> |
| + | 	</csw:Query> |
| + | </csw:GetRecords> |
| + | </pre> |
| | | |
| + | HTTP POST - HEADER (With Username/Password SOAP Envelope) |
| + | |
| + | <pre style="background-color:#EEFFCC; border-color:#AACC99"> |
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> | | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> |
| <soapenv:Header> | | <soapenv:Header> |
Line 102: |
Line 119: |
| </soapenv:Body> | | </soapenv:Body> |
| </soapenv:Envelope> | | </soapenv:Envelope> |
− |
| |
| </pre> | | </pre> |
| | | |
Line 302: |
Line 318: |
| </wcs:CoverageDescriptions></pre> | | </wcs:CoverageDescriptions></pre> |
| | | |
− | === End-to-End OGC Order Example with Python === | + | === Github Repo - End-to-End OGC Order Example with Python === |
| | | |
− | Checkout out our [https://github.com/nrcan-eodms-sgdot-rncan/eodms-ogc-client-py/wiki open source Python module on GitHub] to search the EODMS_Catalog CSW and WCS services to order a Radarsat-1 image from the EODMS. | + | Checkout out our [https://github.com/nrcan-eodms-sgdot-rncan/eodms-ogc-client-py/wiki open source Python module on GitHub] use the CSW and WCS APIs to order images from EODMS. |
| | | |
− | == Web Automation with Katalon == | + | == Github Repo - Web Automation with Katalon == |
| | | |
| * A [https://github.com/nrcan-eodms-sgdot-rncan/eodms-scene-retriever Katalon utility] to automate website user clicks for searching and ordering. | | * A [https://github.com/nrcan-eodms-sgdot-rncan/eodms-scene-retriever Katalon utility] to automate website user clicks for searching and ordering. |
| | | |
| @fr| | | @fr| |
| + | == Aperçu == |
| | | |
| [[Earth_Observation_Data_Management_System_(EODMS)|SGDOT]] propose plusieurs options pour l’API Access et automation, à savoir Machine 2 Machine. | | [[Earth_Observation_Data_Management_System_(EODMS)|SGDOT]] propose plusieurs options pour l’API Access et automation, à savoir Machine 2 Machine. |
Line 367: |
Line 384: |
| == OGC == | | == OGC == |
| | | |
− | * API compatibles OGC: CSW pour la recherche et WCS pour la commande.
| + | Voici des exemples d'utilisation des API OGC de SGDOT avec un complet [https://github.com/nrcan-eodms-sgdot-rncan/eodms-ogc-client-py/wiki module Python open source sur GitHub] |
| | | |
| === Découvrez des images / CSW GetRecords === | | === Découvrez des images / CSW GetRecords === |
Line 381: |
Line 398: |
| <code style="background-color:#EEFFCC; border-color:#AACC99">https://www.eodms-sgdot.nrcan-rncan.gc.ca/MetaManagerCSW/csw/RCMImageProducts</code> | | <code style="background-color:#EEFFCC; border-color:#AACC99">https://www.eodms-sgdot.nrcan-rncan.gc.ca/MetaManagerCSW/csw/RCMImageProducts</code> |
| | | |
− | HTTP POST - HEADER | + | HTTP POST - HEADER (No Username/Password) |
| | | |
| <pre style="background-color:#EEFFCC; border-color:#AACC99"> | | <pre style="background-color:#EEFFCC; border-color:#AACC99"> |
| + | <csw:GetRecords service='CSW' version='2.0.2' |
| + | maxRecords='10' |
| + | startPosition='1' |
| + | resultType='results' |
| + | outputFormat='application/xml' |
| + | outputSchema='http://www.opengis.net/cat/csw/2.0.2' |
| + | xmlns='http://www.opengis.net/cat/csw/2.0.2' |
| + | xmlns:csw='http://www.opengis.net/cat/csw/2.0.2' |
| + | xmlns:ogc='http://www.opengis.net/ogc' |
| + | xmlns:ows='http://www.opengis.net/ows' |
| + | xmlns:dc='http://purl.org/dc/elements/1.1/' |
| + | xmlns:dct='http://purl.org/dc/terms/' |
| + | xmlns:gml='http://www.opengis.net/gml' |
| + | 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'> |
| + | <csw:Query typeNames='csw:Record'> |
| + | <csw:ElementSetName typeNames='csw:Record'>summary</csw:ElementSetName> |
| + | <csw:Constraint version='1.1.0'> |
| + | <ogc:Filter> |
| + | <ogc:BBOX> |
| + | <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName> |
| + | <gml:Envelope> |
| + | <gml:lowerCorner>-53.0 47.2</gml:lowerCorner> |
| + | <gml:upperCorner>-52.5 47.8</gml:upperCorner> |
| + | </gml:Envelope> |
| + | </ogc:BBOX> |
| + | </ogc:Filter> |
| + | </csw:Constraint> |
| + | </csw:Query> |
| + | </csw:GetRecords> |
| + | </pre> |
| | | |
| + | HTTP POST - HEADER (Avec enveloppe SOAP nom d'utilisateur / mot de passe) |
| + | |
| + | <pre style="background-color:#EEFFCC; border-color:#AACC99"> |
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> | | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> |
| <soapenv:Header> | | <soapenv:Header> |
Line 396: |
Line 448: |
| <soapenv:Body> | | <soapenv:Body> |
| | | |
− | <csw:GetRecords service='CSW' version='2.0.2' maxRecords='10' startPosition='1' resultType='results' | + | <csw:GetRecords service='CSW' version='2.0.2' |
− | 	outputFormat='application/xml' outputSchema='http://www.opengis.net/cat/csw/2.0.2'
| + | maxRecords='10' |
− | 	xmlns='http://www.opengis.net/cat/csw/2.0.2' xmlns:csw='http://www.opengis.net/cat/csw/2.0.2'
| + | startPosition='1' |
− | 	xmlns:ogc='http://www.opengis.net/ogc' xmlns:ows='http://www.opengis.net/ows'
| + | resultType='results' |
− | 	xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:dct='http://purl.org/dc/terms/'
| + | outputFormat='application/xml' |
− | 	xmlns:gml='http://www.opengis.net/gml' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
| + | outputSchema='http://www.opengis.net/cat/csw/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'>
| + | xmlns='http://www.opengis.net/cat/csw/2.0.2' |
− | 	<csw:Query typeNames='csw:Record'>
| + | xmlns:csw='http://www.opengis.net/cat/csw/2.0.2' |
− | 		<csw:ElementSetName typeNames='csw:Record'>summary</csw:ElementSetName>
| + | xmlns:ogc='http://www.opengis.net/ogc' |
− | 	</csw:Query>
| + | xmlns:ows='http://www.opengis.net/ows' |
| + | xmlns:dc='http://purl.org/dc/elements/1.1/' |
| + | xmlns:dct='http://purl.org/dc/terms/' |
| + | xmlns:gml='http://www.opengis.net/gml' |
| + | 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'> |
| + | <csw:Query typeNames='csw:Record'> |
| + | <csw:ElementSetName typeNames='csw:Record'>summary</csw:ElementSetName> |
| + | <csw:Constraint version='1.1.0'> |
| + | <ogc:Filter> |
| + | <ogc:BBOX> |
| + | <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName> |
| + | <gml:Envelope> |
| + | <gml:lowerCorner>-53.0 47.2</gml:lowerCorner> |
| + | <gml:upperCorner>-52.5 47.8</gml:upperCorner> |
| + | </gml:Envelope> |
| + | </ogc:BBOX> |
| + | </ogc:Filter> |
| + | </csw:Constraint> |
| + | </csw:Query> |
| </csw:GetRecords> | | </csw:GetRecords> |
| | | |
| </soapenv:Body> | | </soapenv:Body> |
| </soapenv:Envelope> | | </soapenv:Envelope> |
− |
| |
| </pre> | | </pre> |
| | | |
Line 602: |
Line 673: |
| 		</wcs:ServiceParameters> | | 		</wcs:ServiceParameters> |
| 	</wcs:CoverageDescription> | | 	</wcs:CoverageDescription> |
− | </wcs:CoverageDescriptions></pre> | + | </wcs:CoverageDescriptions> |
| + | </pre> |
| | | |
| === Exemple de commande de bout en bout (avec Python) === | | === Exemple de commande de bout en bout (avec Python) === |
| | | |
− | Découvrez notre [https://github.com/nrcan-eodms-sgdot-rncan/eodms-ogc-client-py/wiki module Python Open Source sur GitHub] pour rechercher les services EODMS_Catalog CSW et WCS afin de commander un Radarsat-1. image de l'EODMS. | + | Découvrez notre [https://github.com/nrcan-eodms-sgdot-rncan/eodms-ogc-client-py/wiki module Python Open Source sur GitHub] pour rechercher les services CSW et WCS afin de commander des images de l'EODMS. |
| | | |
| == Automatisation web avec Katalon == | | == Automatisation web avec Katalon == |