-
Notifications
You must be signed in to change notification settings - Fork 2
docs(dem): v2 (MAPCO-8937) #163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
9f0baeb
979d501
a3d5b0d
463b187
88f7eac
eba1ae0
a71cce3
fd67712
3fa291b
e1cb1c1
c26d4e1
a32650b
e53a8be
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,7 +1,7 @@ | ||
| --- | ||
| id: dem-getting-started | ||
| slug: dem-getting-started | ||
| title: Getting started | ||
| id: terrain-provider | ||
| slug: terrain-provider | ||
| title: Terrain Provider | ||
| tags: | ||
| - guide | ||
| - DEM | ||
|
|
@@ -41,26 +41,26 @@ flowchart LR | |
| ## Query CSW catalog (Step 1) | ||
| Query **DEM CSW catalog** service to find item(s) according to desired filter [examples are here](/docs/ogc/protocols/ogc-csw/ogc-csw-examples) | ||
|
|
||
| Filter should be based on [DEM profile](/docs/MapColonies/DEM/Services/catalog/catalog-profile-v1) | ||
| Filter should be based on [DEM profile](/docs/MapColonies/DEM/Services/catalog/dem-catalog-profile-v1) | ||
|
|
||
| Example query based on `mc:classification` profile field | ||
| ```xml title="GetRecords Request" | ||
| POST Request | ||
|
|
||
| url: | ||
| '<DEM-CATALOG-SERVICE_URL>/csw' | ||
| '{DEM_CATALOG_SERVICE_URL}/csw' | ||
|
|
||
| body (XML): | ||
| <?xml version="1.0" encoding="UTF-8"?> | ||
| <csw:GetRecords outputFormat="application/xml" outputSchema="http://schema.mapcolonies.com/dem" resultType="results" service="CSW" version="2.0.2" startPosition="1" maxRecords="200" xmlns:mc="http://schema.mapcolonies.com/dem" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns:ogc="http://www.opengis.net/ogc"> | ||
| <csw:Query typeNames="csw:Record"> | ||
| <csw:GetRecords outputFormat="application/xml" outputSchema="http://schema.mapcolonies.com/dem" resultType="results" service="CSW" version="2.0.2" startPosition="1" maxRecords="200" xmlns:mc="http://schema.mapcolonies.com/dem" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns:ogc="http://www.opengis.net/ogc"> | ||
| <csw:Query typeNames="mc:MCDEMRecord"> | ||
| <csw:ElementSetName>full</csw:ElementSetName> | ||
| <csw:Constraint version="1.1.0"> | ||
| <ogc:Filter> | ||
| <ogc:And> | ||
| <ogc:PropertyIsEqualTo> | ||
| <ogc:PropertyName>mc:classification</ogc:PropertyName> | ||
| <ogc:Literal>5</ogc:Literal> | ||
| <ogc:Literal>0</ogc:Literal> | ||
| </ogc:PropertyIsEqualTo> | ||
| <ogc:PropertyIsEqualTo> | ||
| <ogc:PropertyName>mc:productType</ogc:PropertyName> | ||
|
|
@@ -82,19 +82,19 @@ You will get GetRecords XML Response with product **metadata**. | |
| <?xml version="1.0" encoding="UTF-8"?> | ||
| <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:mc="http://schema.mapcolonies.com/dem" xmlns:ows="http://www.opengis.net/ows" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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"> | ||
| <csw:SearchStatus timestamp="2022-03-27T06:45:54Z" /> | ||
| <csw:SearchResults numberOfRecordsMatched="2" numberOfRecordsReturned="2" nextRecord="0" recordSchema="http://schema.mapcolonies.com/dem" elementSet="full"> | ||
| <csw:SearchResults numberOfRecordsMatched="1" numberOfRecordsReturned="1" nextRecord="0" recordSchema="http://schema.mapcolonies.com/dem" elementSet="full"> | ||
| <mc:MCDEMRecord> | ||
| <mc:accuracyLEP90>999.0</mc:accuracyLEP90> | ||
| <mc:classification>5</mc:classification> | ||
| <mc:footprint>{"type":"Polygon","coordinates":[[[31.2603,33.4345],[31.2603,34.4888],[32.3353,34.4888],[32.3353,33.4345],[31.2603,33.4345]]]}</mc:footprint> | ||
| <mc:geographicArea>ישראל</mc:geographicArea> | ||
| <mc:maxHorizontalAccuracyCE90>999.0</mc:maxHorizontalAccuracyCE90> | ||
| <mc:id>c2bbeeee-6081-4e69-918c-287f48ea244d</mc:id> | ||
| <mc:links scheme="WMTS_LAYER" name="" description="">http://dem-server/15211-65da-4523-9d6f-08016ad51b0d....</mc:links> | ||
| <mc:links scheme="WMTS_LAYER" name="dem:srtm30-DTM" description="">http://dem-server/15211-65da-4523-9d6f-08016ad51b0d....</mc:links> | ||
| <mc:producerName>DAVID</mc:producerName> | ||
| <mc:productBBox>31.2603,33.4345,32.3353,34.4888</mc:productBBox> | ||
| <mc:productId>c2bbeeee-6081-4e69-918c-287f48ea244d</mc:productId> | ||
| <mc:productName>מודל פריז</mc:productName> | ||
| <mc:productId>srtm30-DTM</mc:productId> | ||
| <mc:productName>srtm30-DTM</mc:productName> | ||
| <mc:productType>DTM</mc:productType> | ||
| <mc:productVersion>1</mc:productVersion> | ||
| <mc:productionMethod>photogrammetric</mc:productionMethod> | ||
|
|
@@ -160,8 +160,8 @@ In the Response, look for desired data according to profile definition. | |
| In the Response, look for | ||
|
|
||
| ```xml title="Extract link for terrain provider" | ||
| <mc:links scheme="TERRAIN_QMESH" name="srtm100"> | ||
| http://terrain-server.com/terrains/srtm100 | ||
| <mc:links scheme="TERRAIN_QMESH" name="srtm30-DTM"> | ||
| {TERRAIN_URL}/terrains/srtm30 | ||
| </mc:links> | ||
| ``` | ||
|
|
||
|
|
@@ -189,14 +189,14 @@ Now, after you got all product metadata that you need by querying our Catalog, l | |
| // **Optional** add to Cesium terrain provider in order to clamp 3d models to the ground or investigate terrain | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. remove blank space at EOL |
||
| viewer.terrainProvider = new Cesium.TerrainProvider({ | ||
| url: new Cesium.Resource({ | ||
| url: "<TERRAIN_URL>", | ||
| url: "{TERRAIN_URL}", | ||
| queryParameters: { | ||
| "token": "<token>", | ||
| "token": "{token}", | ||
| }, | ||
| }), | ||
| }); | ||
| ... | ||
| ``` | ||
| Replace `<TERRAIN_URL>` with the URL link that you got from **Step 2.1 (optional)**. | ||
| Replace `{TERRAIN_URL}` with the URL link that you got from **Step 2.1 (optional)**. | ||
|
|
||
| Replace `<token>` with the token you have. | ||
| Replace `{token}` with the token you have. | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,85 @@ | ||
| --- | ||
| id: dem-profile-v2 | ||
| slug: dem-catalog-profile-v2 | ||
| description: v2 Profile | ||
| title: Profile v2 | ||
| tags: | ||
| - DEM | ||
| - catalog | ||
| - v2 | ||
| --- | ||
|
|
||
| # DEM Catalog Profile Information | ||
|
|
||
| 1. **typename** = `mc:MCDEMRecord` | ||
| 2. **main_namespace** = `http://schema.mapcolonies.com/dem` | ||
| 3. The **DEM** sub-system Catalog profile fields with information of each of them: | ||
|
|
||
| :::info | ||
|
asafmas-rnd marked this conversation as resolved.
|
||
| The following parameters were added v2: | ||
|
|
||
| | **PYCSW Queryable/XML <br/> Element Name** | **Type** | **Description** | | ||
| | ----------- | ----------- | ----------- | | ||
| | mc:productVersion | int | the product version | | ||
| | mc:srsId | int | reference System ID (EPSG), <br /> ex: 4326 / 3857 | | ||
| | mc:dataType | enum | **Valid Values**: <br/> FLOAT64 / FLOAT32 / FLOAT16 / INT64 / INT32 / INT16 / INT8 | | ||
| | mc:acquisitionTimeBeginUTC | date | Start acquisition time (UTC time) of raw product<br/>Supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:acquisitionTimeEndUTC | date | End acquisition time (UTC time) of raw product<br/>Supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:minResolutionDegree | double | the product min resolution in degrees | | ||
| | mc:maxResolutionDegree | double | the product max resolution in degrees | | ||
| | mc:minResolutionMeter | double | the product min resolution in meters | | ||
| | mc:maxResolutionMeter | double | the product max resolution in meters | | ||
| | mc:minAbsoluteAccuracyLEP90 | double | LEP90 min absolute vertical plane accuracy range in meters | | ||
| | mc:maxAbsoluteAccuracyLEP90 | double | LEP90 max absolute vertical plane accuracy range in meters | | ||
| | mc:minRelativeAccuracyLEP90 | double | LEP90 min relative vertical plane accuracy range in meters | | ||
| | mc:maxRelativeAccuracyLEP90 | double | LEP90 max relative vertical plane accuracy range in meters | | ||
| | mc:minHorizontalAccuracyCEP90 | double | | | ||
| | mc:maxHorizontalAccuracyCEP90 | double | | | ||
| | mc:areaOrPoint | enum | Describes if pixel is “Area” or “Point” | | ||
| | mc:links | text | Available links for different services available for the current product | | ||
| | mc:verticalType | enum | **Valid Values**: Orthometric, Ellipsoidal | | ||
| | mc:verticalSrsId | text | reference System ID (EPSG), <br/> ex: 4326 / 3857 | | ||
| | mc:verticalSrsName | text | name of reference system | | ||
|
|
||
| ::: | ||
|
|
||
| | **PYCSW Queryable/XML <br/> Element Name** | **Type** | **Description** | | ||
| | ----------- | ----------- | ----------- | | ||
| | mc:id | text | unique internal catalog item id | | ||
| | mc:productId | text | unique external product id | | ||
| | mc:productName | text | the product name | | ||
| | mc:productType | enum | **Valid Values**: <br/> DTM / DSM | | ||
| | mc:productVersion | int | the product version | | ||
| | mc:description | text | the product description | | ||
| | mc:footprint | geojson | geographical delineation of the product / model trace | | ||
| | mc:BoundingBox | bbox | two points that represent the record extent | | ||
| | mc:srsId | text | reference System ID (EPSG), <br/> ex: 4326 / 3857 | | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
| | mc:srsName | text | name of reference system | | ||
| | mc:dataType | enum | **Valid Values**: <br/> FLOAT64 / FLOAT32 / FLOAT16 / INT64 / INT32 / INT16 / INT8 | | ||
| | mc:sensors | text | list of sensors used as a source for the product <br/> comma separated list | | ||
| | mc:region | text | sector / countries <br/> comma separated list | | ||
| | mc:insertDateUTC | date | the date when the product was added to catalog <br/> supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:ingestionDateUTC | date | when last was the **data** or **parts** updated <br/> supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:updateDateUTC | date | when last was the MD updated <br/> supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:acquisitionTimeBeginUTC | date | Start acquisition time (UTC time) of raw product<br/>Supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:acquisitionTimeEndUTC | date | End acquisition time (UTC time) of raw product<br/>Supported format: **dd-mm-yyyyThh:mm:ssZ** | | ||
| | mc:minResolutionDegree | double | the product min resolution in degrees | | ||
| | mc:maxResolutionDegree | double | the product max resolution in degrees | | ||
| | mc:minResolutionMeter | double | the product min resolution in meters | | ||
| | mc:maxResolutionMeter | double | the product max resolution in meters | | ||
| | mc:minAbsoluteAccuracyLEP90 | double | LEP90 min absolute vertical plane accuracy range in meters | | ||
| | mc:maxAbsoluteAccuracyLEP90 | double | LEP90 max absolute vertical plane accuracy range in meters | | ||
| | mc:minRelativeAccuracyLEP90 | double | LEP90 min relative vertical plane accuracy range in meters | | ||
| | mc:maxRelativeAccuracyLEP90 | double | LEP90 max relative vertical plane accuracy range in meters | | ||
| | mc:minHorizontalAccuracyCEP90 | double | | | ||
| | mc:maxHorizontalAccuracyCEP90 | double | | | ||
| | mc:areaOrPoint | enum | Describes if pixel is “Area” or “Point” | | ||
| | mc:links | text | Available links for different services available for the current product | | ||
| | mc:classification | text | product classification / confidentiality <br/> Classification values should be numbers between 0 and 100 | | ||
| | mc:producerName | text | manufacturer / organization that produced / supplied the product | | ||
| | mc:noDataValue | int | **Valid Values**: <br/> -32768 | | ||
| | mc:type | enum | type of the catalog <br/> **Value**: RECORD_DEM | | ||
| | mc:keywords | text | list of key words relevant for product | | ||
| | mc:verticalType | enum | **Valid Values**: Orthometric, Ellipsoidal | | ||
| | mc:verticalSrsId | text | reference System ID (EPSG), <br/> ex: 4326 / 3857 | | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. vertical srs ids examples are not vertical. use 5773 / 3855 / 4979. |
||
| | mc:verticalSrsName | text | name of reference system | | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please emphasize that "coverage" refers to the V1 catalog only