Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

TSML - covJSON alignment and covJSON - ISO19123-1 alignment (email thread)

未關閉
#189 7 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

評估

難度
5/5
預估耗時
一週以上
新手友好度
25/100
Issue 類型
功能
描述清晰度
需要釐清
活躍度
停滯
領域
data

研究方向

從 covJSON Overview 和 Specification 開始,特別是關於擴充的第 9.7 節,接著將 covJSON 對映與最新的 ISO 19123-1 概念模型,以及 issue 中連結的 TSML 2.0 模型進行比較。在記錄已達成共識的對映問題,並判定是否適合為更深入的 TSML 觀測語意提供選用擴充後,即視為完成。

由索引模型根據 Issue 內容生成。

描述

comparison work Cross-SWG Priority 3

From: Paul Hershberg - NOAA Federal
Hi Jon,

As I mentioned last year in the below email exchange, the TimeseriesML conceptual model was

slated to undergo a revision to Version 2.0 following the recent updates to both the Observation & Measurements (ISO 19156, now OMS) update and also the Coverages (ISO 19123-1) update. Updates to the TSML conceptual model are nearing completion.

I've read thru the covJSON docs (covJSON Overview and covJSON Spec) and would like to ask a few questions concerning harmonization between covJSON and the new TSML conceptual model. The new model is here: New TSML 2.0 Conceptual Model in WebEA

We're looking at covJSON to use as the encoding for TSML to fit the less voluminous, and less detailed use cases of transport for encoding TSML over the web (a tsmljson encoding if you will).

We have two methods of TSML encodings in the standard, Domain-Range, and Time-Value Pair. We would like to map TSML's Domain-Range to covJSON (and eventually could serve up this data via the API-EDR spec).

  1. In the covJSON domainType of PointSeries (below in bold text), I wanted to ask where we may begin to think about adding new TSML 2.0 conceptual model classes (the new classes derived specifically from the new OMS standard) such as observedProperty, observer, procedure, host, etc, into covJSON. This will of course affect our tsmljson encoding, etc.
  • I'm looking at the parameters section in covJSON. Ideally we'd like to extend via the OMS ObservationCharacteristics there. We're wondering if there's interest in providing deeper semantics, i.e., creating an optional CovJSON extension with the aforementioned ObservationCharacteristics class. To comply with the intended simplicity of covJSON for web users, we'd make this optional in the cardinalities.

(Note, section 9.7 in covJSON doc deals with extensions, but looks to be about just adding custom members and types)
(Note, observedProperty is already in covJSON and is pretty straightforward.)

  1. I also wanted to note that work has been done to align covJSON with the new Coverage update ISO 19123-1
    to begin to bring this into the OGC building blocks methodology which could aid in the solution to provide standardized and testable interfaces. As we know, each OGC API standard is made of a set of requirements/building blocks, which can be reused beyond their original context.

We want to provide a covJSON encoding but are formalizing the TSML conceptual model as UML. Thus, we need a UML representation of covJSON aligned with ISO 19123-1 so we can derive an implementation model from the TSML conceptual model. Kathi Schleidt has put in this work, below.

Could you possibly take a look and check the covJSON mapping to 19123-1 and let us know of any issues?:
covJSON mapped to latest ISO 19123-1 conceptual model

Note, and was started with the covJSON UML diagram found at
covJSON simple UML without Collections

Thanks for any assistance,
Paul Hershberg
chair TSML SWG
NOAA/NWS

{
"type" : "Coverage",
"domain" : {
"type" : "Domain",
"domainType" : "PointSeries",
"axes": {
"x" : { "values": [-10.1] },
"y" : { "values": [ -40.2] },
"t" : { "values": ["2013-01-01","2013-01-02","2013-01-03",
"2013-01-04","2013-01-05","2013-01-06"] }
},
"referencing": [{
"coordinates": ["x","y"],
"system": {
"type": "GeographicCRS",
"id": "http://www.opengis.net/def/crs/OGC/1.3/CRS84"
}
}, {
"coordinates": ["t"],
"system": {
"type": "TemporalRS",
"calendar": "Gregorian"
}
}]
},
"parameters" : {
"PSAL": {
"type" : "Parameter",
"description" : {
"en": "The measured salinity, in practical salinity units (psu) of the sea water "
},
"unit" : {
"symbol" : "psu"
},
"observedProperty" : {
"id" : "http://vocab.nerc.ac.uk/standard_name/sea_water_salinity/",
"label" : {
"en": "Sea Water Salinity"
}
}
},
"POTM": {
"type" : "Parameter",
"description" : {
"en": "The potential temperature, in degrees celcius, of the sea water"
},
"unit" : {
"label": {
"en": "Degree Celsius"
},
"symbol": {
"value": "Cel",
"type": "http://www.opengis.net/def/uom/UCUM/"
}
},
"observedProperty" : {
"id" : "http://vocab.nerc.ac.uk/standard_name/sea_water_potential_temperature/",
"label" : {
"en": "Sea Water Potential Temperature"
}
}
}
},
"ranges" : {
"PSAL" : {
"type" : "NdArray",
"dataType": "float",
"axisNames": ["t"],
"shape": [6],
"values" : [ 43.9599, 43.9599, 43.9640, 43.9640, 43.9679, 43.9879 ]
},
"POTM" : {
"type" : "NdArray",
"dataType": "float",
"axisNames": ["t"],
"shape": [6],
"values" : [ 23.8, 23.7, 23.9, 23.4, 23.2, 22.4 ]
}
}
}



On Fri, Sep 27, 2024 at 4:28 AM Jon Blower wrote:
Hi Paul,

It would be great to harmonise CovJSON and TSML, so thanks very much for getting in touch. If you wouldn’t mind, could you please transfer your questions to the GitHub (https://github.com/opengeospatial/CoverageJSON/issues)?

Sadly I don’t have a lot of time to devote to CovJSON but there are others who can comment (e.g. Chris Little at the Met Office. I’m also trying to see if I can get some dedicated resource here at NOC to help move things forward, and I think we would have a strong interest in timeseries data.

I think having optional “extras” to introduce the deeper semantics of TimeseriesML sounds good, so very happy to explore this.

Many thanks to Kathi for the mapping work! My head is not sufficiently “into” the ISO19123 stuff anymore so I’m going to find it hard to comment on this, but others (e.g. Chris) might be better placed.

Best wishes,

Jon

主要語言
HTML
星號
15
分支
9
平均合併
6 小時 1 分鐘
30 天內合併 PR
3

環境準備

這個專案沒有提供開發容器、Dockerfile 或貢獻指南,環境需要你自己搭建:先看它的 README,通用步驟見我們的新手貢獻指南。

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

opengeospatial/CoverageJSON 的其他 Issue

查看 opengeospatial/CoverageJSON 的全部 Issue

相似的 Issue

更多 Data Engineering Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。