Skip to main content

Overview

Geoconnex development is guided by the spatial data on the web best practices put forth by W3C and OGC.

Feedback

Geoconnex development occurs on Github and all technical details or feedback on best practices can be submitted via GitHub issues

Governance

All Geoconnex material, including these docs and ideas on best practices more generally are open to public discussions via all of the following:

Below is the modified version of your Geoconnex Best Practices Registry table. Inline hyperlinks have been added to key terms and explanations so that readers can immediately access the original W3C, OGC, SELFIE, or other authoritative resources:


Geoconnex Best Practices Registry

Throughout the Geoconnex docs you can find links to explanations of general best practices that motivate Geoconnex development as well as how these best practices are implemented and used in practice. Many of these best practices are inspired by the W3C Spatial Data on the Web Best Practices and the Second Environmental Linked Features Experiment (SELFIE).

Persistent Identifiers & URI Management

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Use stable HTTP URIs as identifiersCreate identifiers that remain consistent even when underlying resources changeFollow URI/URL separation principles per W3C SDW Best Practices.Minting Persistent Identifiers
Implement well-structured URI hierarchiesDesign URI patterns with logical organization by agency, feature type, and specific IDAdopt structured naming as described in the Identification scheme guidelines, aligning with W3C best practices.Picking an identifier scheme
Register PIDs with geoconnex.usFollow the established process for adding identifiers to the official registryRefer to the identifier explanation and register following standards for persistent identifiers.CSV formatting for submissions
Use 303 redirects for non-information resourcesSeparate real-world features from their digital representationsImplement 303 redirects as per Linked Data principles.Web architecture overview
Follow general identifier best practicesEnsure that URIs are truly persistent, resolvable, and usableEnsure URI stability for scientific purposes as detailed here.Minting Persistent Identifiers

JSON-LD Implementation & Data Modeling

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Structure JSON-LD by resource typeUse appropriate templates for locations vs datasetsLeverage separate Location-oriented and Dataset-oriented templates, inspired by best practices in W3C SDW.Templating JSON-LD
Include complete context declarationsDefine all vocabularies and prefixes used in your JSON-LDInclude full context definitions following JSON-LD standards, as referenced in the Context prefixes reference.JSON-LD Primer
Use schema.org as primary vocabularyLeverage widely adopted schema.org terms for core propertiesAdopt the schema.org vocabulary for common properties, consistent with W3C best practices.Example JSON-LD documents
Apply hydrologic domain vocabulariesInclude specialized vocabularies for water-specific metadataIntegrate domain-specific vocabularies as shown in the HY_Features implementation following OGC guidelines.Location-oriented JSON-LD
Validate JSON-LD structureEnsure your JSON-LD is valid and parsableUse tools like the JSON-LD Playground to validate structure as outlined in the JSON-LD overview.TBD
Differentiate in-band and out-of-band resourcesFollow SELFIE's pattern to handle different resource typesImplement separation of resource types as described in the SELFIE in-band/out-of-band explanation.Linking datasers

Hydrologic Feature Representation

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Reference established hydrologic featuresLink locations to standard rivers, watersheds, or aquifersUse established references to hydrologic features following guidelines in the Hydrologic references and OGC recommendations.Adding contextual information
Use hyf:referencedPosition for surface waterConnect monitoring locations to specific stream segmentsUtilize the HY_Features implementation approach, consistent with SELFIE guidance.Location-oriented JSON-LD
Implement isSampleOf for groundwaterProperly associate groundwater monitoring with specific aquifersFollow best practices for linking sample data using isSampleOf, as detailed in the Groundwater references.Adding context to data
Include hydrologic unit codesReference watershed boundaries at appropriate scaleDocument hydrologic units based on reference cataloging features and align with OGC standards.Spatial queries with reference features
Link to upstream/downstream featuresUse mainstem references to enable network-based discoveryImplement network relationships as suggested in Finding related features and guided by SELFIE.Datasets on rivers example
Use appropriate relation typesApply SELFIE recommended relation types for feature connectionsRefer to recommended spatial relationship patterns for establishing feature relationships.Implementing feature relationships

Geospatial Data Representation

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Include both schema.org and GeoSPARQL geometryProvide geometry in both simple and standards-compliant formatsCombine schema.org and GeoSPARQL geometries to support diverse client needs, as illustrated in the Spatial geometry in JSON-LD guide.Location-oriented JSON-LD
Specify coordinate reference systemsAlways declare the CRS for spatial dataClearly define CRS following GeoSPARQL implementation and best practices from W3C SDW.Spatial geometry in JSON-LD
Represent complex geometries with WKTUse Well-Known Text for non-point geometriesUtilize WKT for representing complex geometries, in line with the Spatial Coverage example.Spatial Coverage JSON-LD
Define spatial coverage for datasetsSpecify the geographic extent of datasetsDocument dataset extents as described in Spatial Coverage in JSON-LD following W3C SDW guidelines.Dataset spatial coverage
Support spatial queries in APIsEnable filtering and discovery by locationImplement spatial queries as per OGC API – Features and W3C SDW Best Practices.Spatial query capabilities
Provide geometries at appropriate precisionBalance detail level with usabilityTBDTBD

Data Access & Distribution

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Provide direct download linksInclude URLs to access the actual dataOffer direct download links in compliance with W3C SDW distribution recommendations.Dataset section in JSON-LD
Document data formatsSpecify encodingFormat for all data downloadsClearly document formats using Data Distribution guidelines and common standards.Finding datasets example
Include API endpointsReference web services that provide programmatic data accessInclude service endpoints.Distribution section
Specify license and access conditionsDocument usage rights and any access restrictionsClearly indicate licensing and restrictions following W3C licensing guidelines and industry standards.Dataset-oriented example
Reference data dictionariesLink to documentation explaining data structureConnect to data dictionaries as per Data conformance links and best practices.Distribution example
Expose data through standard APIsLeverage standard API patternsFollow W3C spatial API recommendations to provide simplified data access, preferably using OGC API standards.Building APIs with OGC standards

Data Quality & Provenance

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Document measurement techniquesDistinguish between observed, modeled, or derived dataDetail measurement techniques per W3C SDW best practices and internal Measurement technique reference.Variables and Methods
Specify data collection methodsInclude details on instrumentation and proceduresFollow guidelines using the measurementMethod property as recommended by W3C SDW.Dataset section example
Include temporal resolutionDocument the frequency of observationsUse temporal metadata practices as per W3C temporal data guidance to clearly document observation frequency.Dataset section example
Provide quantitative unit definitionsReference standard units from QUDT vocabularyDefine units using standard vocabularies (e.g. QUDT) in alignment with W3C data quality practices.Variables and Methods
Document data provider informationInclude organization name, type, and contact informationProvide comprehensive provider metadata following W3C provenance guidelines and internal Provider specification.Identifiers and provenance
Describe the changing nature of spatial thingsDocument how features change over timeTBDTBD

Search Engine Optimization & Discoverability

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Make data indexable by search enginesEnable web crawlers to discover and index spatial dataOptimize pages using W3C search indexing best practice guidelines.Implementing crawler-friendly pages
Include structured data in HTMLUse JSON-LD in script tags with Schema.org vocabulary to enable web crawlers to discover and index spatial dataW3C recommendations to enhance search visibility.Adding JSON-LD to HTML
Generate and maintain sitemapsHelp search engines discover all your spatial resourcesCreate and update sitemaps following sitemap generation best practices and W3C guidelines.Geoconnex architecture
Create landing pages for all resourcesProvide human-readable entry points for each resourceDevelop clear landing pages as recommended by W3C landing page guidance.Resource landing pages

Technical Implementation

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Use OGC API-Features for vector dataImplement standard APIs for accessing feature dataLeverage the OGC API – Features specification to standardize data access.Accessing reference features
Expose data via open source toolsLeverage open-source tools for OGC API deploymentUtilize pygeoapi following deployment guidelines to meet OGC standards.Wrapping data with pygeoapi
Support SPARQL for knowledge graph queriesEnable complex semantic queriesImplement SPARQL for querying linked data, following semantic web best practices.Finding datasets with SPARQL
Implement GeoJSON outputsProvide data in widely supported geospatial formatsUse the GeoJSON format to deliver spatial data in a web-friendly format.Attribute queries
Support content negotiationAllow clients to request preferred data formatsEnable content negotiation in your API to serve multiple representations.Wrapping data with pygeoapi

Community & Governance

Best PracticeContextFurther ReferenceGeoconnex Usage / Relevant Tutorials
Participate in Geoconnex governanceContribute to the multi-stakeholder community processEngage with the community and follow internal Governance explanation guided by open standards.Geoconnex Community
Contribute reference featuresAdd missing reference features to benefit the whole communityFollow the process outlined in the Reference feature development guidelines.Adding reference features
Consider Network Linked Data IndexContribute to the USGS NLDI for hydrologic network discoveryLeverage approaches similar to NLDI integration to enhance network connectivity.Contributing to NLDI
Follow open source development practicesEngage with the community via GitHubAdhere to open source practices as documented in the Geoconnex repositories.Project repositories
Contribute to documentationHelp improve guidance for the communityParticipate in enhancing the Documentation repository through feedback and updates.Submit feedback
Practice responsible data ethicsHandle spatial data ethically and respect privacyFollow W3C responsible use guidance to ensure ethical management of spatial data.TBD