feat: add underway dataset type, data_accessibility field, align box format with SOSO#28
Merged
clevinson merged 5 commits intoApr 10, 2026
Conversation
…quilibrator etc.) oae_data_protocol.validation.schema.json on main was stale relative to the source YAMLs — it was missing several classes that exist in src/oae_data_protocol/schema/ (e.g. CO2Equilibrator from instrument.yaml, ContinuousCO2Calibration, and related discriminated-union variants). Someone merged YAML changes without running make gen-validation-schema. Running the generator against the current YAMLs with the pinned linkml toolchain (linkml 1.8.7 / linkml-runtime 1.8.3 per poetry.lock) produces this diff: adds 1229 lines of legitimate missing content, no removals. Also bumps the generation timestamp in datamodel/oae_data_protocol.py by 1 line as a side effect. No schema meaning changes — main's oae_data_protocol.schema.json is already up to date, so this only touches validation.schema.json and the datamodel timestamp. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…format with SOSO Three issues from oae-data-commons: #97 — Add 'underway' to DatasetType enum, for data collected continuously from a moving platform (e.g., ship underway system sampling surface seawater during transit). #99 — Add new DataAccessibility enum (open_access, conditional_access, scheduled_access) and a required data_accessibility slot on the base Dataset class. Field-level description enumerates all three options so the form can surface them via a single tooltip; per-value descriptions remain on the enum for downstream consumers. #88 — Align the GeoShape box format with science-on-schema.org. SOSO specifies the box string as two space-separated corner points — the southwest (lower-left) corner followed by the northeast (upper-right) corner — with each point written as `<latitude> <longitude>` in decimal degrees: "<minLat> <minLon> <maxLat> <maxLon>". The protocol's spatial_coverage and GeoShape.box descriptions previously documented a longitude-first ordering, which contradicted SOSO and was the root cause of the lat/lon flip reported in jstorylong's bug. This commit rewrites the box format documentation in core.yaml, experiment.yaml, and model.yaml; updates example box strings in src/docs/files/metadata-format.md to lat-first; and cites the SOSO guide URL. Doc audit (per CLAUDE.md): - src/docs/files/vocabularies.md — added underway and DataAccessibility rows - src/docs/files/Datasets/index.md — added data_accessibility to key fields table - src/docs/files/metadata-format.md — flipped box example to lat-first Refs: submarine-mrv/oae-data-commons#97 #99 #88 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
clevinson
commented
Apr 10, 2026
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… GeoShape.box only The serialization format (lat-first, SOSO spec, example, link) now lives only on the GeoShape.box attribute description. The spatial_coverage slot descriptions on Project, Experiment, and ModelGrid just describe what the field represents. The nested GeoShape.box description propagates through the schema and is visible to both UI tooltips and LLM consumers. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Addresses three issues from
submarine-mrv/oae-data-commons:underwayto theDatasetTypeenum for data collected continuously from a moving platform (e.g., ship underway system).DataAccessibilityenum (open_access,conditional_access,scheduled_access) and a requireddata_accessibilityslot on the baseDatasetclass. Field-level description enumerates all three options for tooltip rendering in the form; per-value descriptions remain on the enum for downstream consumers.GeoShape.boxformat with science-on-schema.org. SOSO specifies"<minLat> <minLon> <maxLat> <maxLon>"(latitude-first). The protocol'sspatial_coverageandboxdescriptions previously documented a longitude-first ordering, contradicting SOSO and causing the lat/lon flip reported in the bug. Rewrites box format docs incore.yaml,experiment.yaml,model.yaml; flips example box strings inmetadata-format.mdto lat-first; cites SOSO guide URL.Also includes a housekeeping commit regenerating the stale
validation.schema.json(was missing classes likeCO2Equilibratorthat already exist in the source YAMLs).Doc audit
vocabularies.md— addedunderwayandDataAccessibilityrowsDatasets/index.md— addeddata_accessibilityto key fields tablemetadata-format.md— flipped box examples to lat-firstTest plan
make gen-project && make gen-validation-schemacleanmake lintpassesDataAccessibilityenum,data_accessibilityrequired on Dataset/FieldDataset/ModelOutputDataset,underwayin DatasetTypeoae-formto pull schema (make schema), wiredata_accessibilityinto uiSchema, and flip box parser/formatter to lat-firstRefs: submarine-mrv/oae-data-commons#97 submarine-mrv/oae-data-commons#99 submarine-mrv/oae-data-commons#88
🤖 Generated with Claude Code