This release is a pre-release and may not be stable for production use.
s100py
Python API and Utilities for Working with IHO S-100 HDF5 Data Formats
Overview
This python package provides utilities for encoding hydrographic datasets in the International Hydrographic Organization (IHO) S-100 HDF5 format.
Background
The IHO S-100 standard is a data framework for digital products and services for hydrographic, maritime, and GIS communities, comprised of multiple data encoding formats designed for interoperability with Electronic Navigational Charts (ENCs).
This package includes the following S-100 encoding formats:
- S-102 Bathymetric Surface
- S-104 Water Level Information for Surface Navigation
- S-111 Water Currents for Surface Navigation
However, support for additional formats as they become available will be added in the future. For further information about S-100 formats, see the IHO website.
Create S100 Products
- Follow S-102 examples to create an S-102 File
- Follow S-104 examples to create an S-104 File
- Follow S-111 examples to create an S-111 File
For S100 API Developers
Requirements
This codebase is written for Python 3 and relies on the following python packages:
- h5py
- numpy
- gdal
Installation
This package requires the GDAL Python bindings be present, so it usually can't
just be installed using pip install gdal. We recommend installing GDAL
either through a package manager (e.g. conda, apt, yum, pacman)
or by compiling from scratch. Miniconda
is probably the easiest method.
Once gdal has been installed, s100py can be installed using pip:
pip install s100py
Release Notes
Version 1.0.0-rc.1 (2021-02-11)
- This is a major release, which inclues a new API that encapsulates the data specifications to allow introspection with Python to determine what data is available or should be and what data types would be acceptable. Convenience utilities are available to convert data into S102/S104/S111 so detailed knowledge of the S100 specs and APIs is not required in most cases
- Support for s102 (bathymetry) and s104 (water levels) has been added
- A consistent API for S100 data structures was added and is used to encode S102, S104, and S111
- The previous S111 library has been migrated to this general S100 API and therefore any code written against the previous s100py library will no longer work
- Examples of using the new S111 API are available here
Authors
- Barry Gallagher (NOAA), barry.gallagher@noaa.gov
- Erin Nagel (UCAR), erin.nagel@noaa.gov
- Glen Rice (NOAA), glen.rice@noaa.gov
- Jason Greenlaw
License
This work, as a whole, falls under Creative Commons Zero (see LICENSE).
Disclaimer
This repository is a scientific product and is not official communication of the National Oceanic and Atmospheric Administration, or the United States Department of Commerce. All NOAA GitHub project code is provided on an 'as is' basis and the user assumes responsibility for its use. Any claims against the Department of Commerce or Department of Commerce bureaus stemming from the use of this GitHub project will be governed by all applicable Federal law. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by the Department of Commerce. The Department of Commerce seal and logo, or the seal and logo of a DOC bureau, shall not be used in any manner to imply endorsement of any commercial product or activity by DOC or the United States Government.
Release files for s100py 1.0.0rc1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| s100py-1.0.0rc1.tar.gz | 242.1 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| s100py-1.0.0rc1-py3.8.egg | Legacy Egg format | - | - | Details |
| s100py-1.0.0rc1-py3.7.egg | Legacy Egg format | - | - | Details |
| s100py-1.0.0rc1-py3.6.egg | Legacy Egg format | - | - | Details |
Total release size: 755.1 kB
Release files / s100py-1.0.0rc1.tar.gz
| Download URL | s100py-1.0.0rc1.tar.gz |
|---|---|
| Size | 242.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2991ae4c2095e2d192940e3011054a5f8535c282e1006b28470a68f40d4f6d99
|
|
BLAKE2b-256 checksum How to use checksums |
eb125e42a5b4a12185658812ac2bc4384f220e9832bc89647d64f269f0771e32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.7
|
Release files / s100py-1.0.0rc1-py3.8.egg
| Download URL | s100py-1.0.0rc1-py3.8.egg |
|---|---|
| Size | 171.3 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
7ce9e02e9a7ebc6cf37802df10fb6c44e7a6cf77e9415ce4e02232b2622eb0cd
|
|
BLAKE2b-256 checksum How to use checksums |
e2192f3c930d97d773c30825d43fca16bc78827672336376d8ded6f177170658
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.8.2
|
Release files / s100py-1.0.0rc1-py3.7.egg
| Download URL | s100py-1.0.0rc1-py3.7.egg |
|---|---|
| Size | 170.7 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
98d4d62b56412c922d9a914bb98f5dfb29f3e8c8d3755464f52b150afa7536a7
|
|
BLAKE2b-256 checksum How to use checksums |
ec06231c8751f338555161dc239335d407788e6ba6af77f177f95712c701624a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.7
|
Release files / s100py-1.0.0rc1-py3.6.egg
| Download URL | s100py-1.0.0rc1-py3.6.egg |
|---|---|
| Size | 170.9 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
b601e032363b8bf31570ebbd28a68fe60d06cbca4a3cf8e1f0106662efe87344
|
|
BLAKE2b-256 checksum How to use checksums |
25609af9b081829767f4f8587ade28c45a771d727a3d1a3bd361501a99146142
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.6.10
|