ioos / system-test

IOOS DMAC System Integration Test project
github.com/ioos/system-test/wiki
The Unlicense
7 stars 14 forks source link

Scenario 1B Progress #140

Open kwilcox opened 10 years ago

kwilcox commented 10 years ago

Progress: 1B Core Variables

Successes

selection_019

selection_020

emiliom commented 10 years ago

Is there a notebook that goes with this? I'm intrigued by this success:

Able to obtain CF Standard names through MMI for all IOOS Core Variables How did you end up getting the linkage from IOOS Core Variables to CF standard names?

Such a mapping still doesn't exist on MMI, AFAIK (#129 and https://github.com/ioos/vocabularies/issues/1). The relevant mappings that exist are IOOS Core Variables to IOOS Parameters, and IOOS Parameters to CF standard names. I assume SPARQL would allow a double hop (IOOS Core Variables > IOOS Parameters > CF standard names); it'd be fun to see the code that does it, though.

dpsnowden commented 10 years ago

See PR #131

emiliom commented 10 years ago

Thanks, @dpsnowden ! Very cool. But, strictly speaking, that notebook is not actually using the IOOS Core Variables to query for CF standard names. The first block uses rdflib to get a pandas DataFrame of the IOOS Core Variables. Cool stuff, @kwilcox . But the second block, "Query MMI for CF standard names related to the IOOS Core Variables", is not actually doing what's advertised. Instead, it's finding CF standard names related to the IOOS Parameter Vocabulary, not the IOOS Core Variables. It looks like what's done in the first block with Core Variables is not really reused in the rest of the notebook. Just pointing this out to clarify that the notebook description is misleading: "This notebook looks at the IOOS core variables and uses the Marine Metadata Interoperability SPARQL endpoint to convert them to CF Standard names".

This issue has inspired me to look more closely into the "double hop" (IOOS Core Variables > IOOS Parameters > CF standard names) vocabulary matching I mentioned. I've borrowed from @neaptide's http://www.unc.edu/~haines/orrioos.html and a bit from @kwilcox 's notebook, to expand a notebook I created earlier. I already had a SPARQL query selecting IOOS Parameters matching one IOOS Core Variable term (dissolved_nutrients); I've added a SPARQL query that then selects CF standard names matching the IOOS parameters previously selected (ie, ones that matched the IOOS Core Variable dissolved_nutrients). See the section at the end. Also, @neaptide's https://github.com/nccoos/ioos-vocabulary-viz previously implements some of that mechanism, also in Python, but for a UI. Cool stuff, Sara!