CUAHSI / CUAHSI/HydroDesktop

Add support for WaterML 2

Open
#124 3 comments 0 reactions 0 assignees View on GitHub
CodePlex
Dominant language
C#
Stars
76
Forks
21
PR merge metrics
No merged PRs in 30d

Description

danames[CodePlex]
We need to add support for WaterML 2 end points.

Notes from David Valentine:

Can we again try a unit testable approach to code in HD?
WaterML2 will be some different. Organizations will have quirks that meet the specification.

Attached are some files converted with an XSLT, and the mapping used.

The USGS presently says they will out in NWIS, but it needs to be vetted.

get sample WaterML2 files
** I have some. We will need to collect a few others write code to inject these files into the pipeline...
** since WaterML 1 files are downloaded, and then read it this is not a big change.

*** (service -gt download to disk -gt read from disk -gt parse -gt load to object -gt load to db )

Basically, we start doing waterML 2 from the read from disk format checking
** validate
** schematron validation? load to object
** need mapping objects/functions
** validate loading load to db
** validate loading for a file

Then whenever a quirk is identified, we add the quirk to the WML2 file repository, write tests for that files quirks, mapping code to handle quirks

hdObject fromWaterML2(stream wml2, bool validate, bool schematron, object/function processMapping, object/function VocabMapping)

WaterML2 Documentation page:
http://www.waterml2.org

Rest Endpoint:
http://water.sdsc.edu/lbrsdsc/WaterMl2.aspx

SOS endpoint from kisters:
http://kiwis.kisters.de/KiWIS/KiWIS?datasource=3service=SOSversion=2.0request=GetCapabilities

http://kiwis.kisters.de/KiWIS/KiWIS?datasource=0service=SOSversion=1.0request=GetCapabilities

More WaterML2 examples:
http://crwr-wisk03.austin.utexas.edu:8080/KiWIS/KiWIS?service=kisterstype=queryServicesrequest=gettimeseriesvaluesdatasource=0format=wml2ts_id=30559042period=P2W

WaterML2 New Zealand Example:
http://hilltopserver.horizons.govt.nz/data.hts?service=SOSrequest=GetObservationfeatureOfInterest=Rangitikei%20at%20OnepuhiObservedProperty=FlowtemporalFilter=om:phenomenomTime,2013-10-01/2013-10-05

WaterML2 WFS example from Finnish Meteorological Institute:
http://data.fmi.fi/fmi-apikey/1cb8a6f3-d8f4-4ae7-8fc3-0b9449683cfb/wfs?request=getFeaturestoredquery_id=fmi::observations::weather::daily::timevaluepairfmisid=101152starttime=2013-02-27T00:00:00Zendtime=2013-03-27T10:00:00Zparameters=snow

Contributor guide

No contributing guide indexed for this repository

Research direction

No source files or tests are named. Start by locating the existing WaterML 1 download-to-disk, parse, object, and database pipeline, then review the supplied WaterML2 examples and mappings against the WaterML2 documentation. Done means WaterML2 files can be validated, parsed, mapped, and loaded through the pipeline with unit tests covering provider-specific quirks.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
data-engineering
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.