Skip to main content

A python package implementing the XML bindings for the IALA S-201 data product specification

Project description

The Python S-201 XML Bindings Package

A python package implementing the XML bindings for the IALA S-201 data product specification.

Introduction

This Python package provides language bindings for the IALA S-201 data product, making it easier for developers to work with S-100 datasets. These bindings allow developers to programmatically interact with S-100-compliant datasets and data models, supporting the creation of applications that need to process, validate, and manipulate S-201 data.

The S-201 belongs to the S-100 framework family, a standard developed by the International Hydrographic Organization (IHO), is the framework for electronic navigational charts, hydrographic data, and other maritime-related geospatial information. These bindings are designed to facilitate integration of S-100 data into modern applications without the complexity of directly handling S-100 specifications.

!!!BE CAREFUL!!!

This software is only intended for test purposes and should NOT BE USED IN ANY PRODUCTION environment.

S-201 XML - Python Classes Generation

To generate the package you can run the xsdata generation command using the config provided in the repo.

xsdata generate ../../../specifications/s-201/2.0.0/S-201.xsd --package org.grad.enav.s201 --config .xsdata.xml --debug

Note that the configuration is fixed so that all the geneted classes are placed under a single file. This handles the circular dependency issues. The you can include generated grad.s201 package into your software to parse and render S-201 XML files.

Packaging the Project

You can follow the great tutorial about packaging python projects here

The metadata of the project can be found in the pyproject.toml file. This defines the required libraries and corresponding versions, packaging information, links to the README and licence files etc.

Then you can install PyPA's build:

python -m pip install --upgrade build

Then generate the project package using the following command:

python -m build

Finally you can upload the package to a repository like PyPI using twine

python -m pip install --upgrade twine

Note that you will also need an API token to upload the package, and you can pass it to the following command:

python -m twine upload -r pypi dist/*

License

Distributed under the Apache License. See LICENSE.md for more information.

Contact

Nikolaos Vastardis - Nikolaos.Vastardis@gla-rad.org

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

s201_xml_bindings-0.0.3.tar.gz (109.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

s201_xml_bindings-0.0.3-py3-none-any.whl (105.7 kB view details)

Uploaded Python 3

File details

Details for the file s201_xml_bindings-0.0.3.tar.gz.

File metadata

  • Download URL: s201_xml_bindings-0.0.3.tar.gz
  • Upload date:
  • Size: 109.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for s201_xml_bindings-0.0.3.tar.gz
Algorithm Hash digest
SHA256 27b37e9a3e959f2f48971b877dec2d50ae167d78563d9bc9e75e36306e650d73
MD5 9da596deb8734fb01d6afc9533d3c0d7
BLAKE2b-256 e9418df7c3041cad824531878d87fe8a41739cb45fb36750b9b28697bccd3890

See more details on using hashes here.

File details

Details for the file s201_xml_bindings-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for s201_xml_bindings-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c8f5b5ef8625a26495d6bfcaa3f7d629e5dd75b143865ccef9d195e6b68cbb85
MD5 e9ac68757c2e31a5e417ed0d2ac3a98e
BLAKE2b-256 1ce5584a671d21ea912779d58c18de8bda7e2e3ea35228ef2fe8a25b098cd37b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page