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.4.tar.gz (108.9 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.4-py3-none-any.whl (105.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: s201_xml_bindings-0.0.4.tar.gz
  • Upload date:
  • Size: 108.9 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.4.tar.gz
Algorithm Hash digest
SHA256 290d60465331cc829602eae36cb7f60beeb4a596ed7a29e26f46dfadba88d8bd
MD5 5c47cd48a495ec8a75b3282ba016bf99
BLAKE2b-256 4703ccea5e8beca1990f9baf2b6091f29cb473e9e990e3e26e74c2f9ed4e6c4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for s201_xml_bindings-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e68153ba9ce4b615d8a421f827ccf6dd2918b415915ab4635ec3739987ae50af
MD5 4515b8a9f528a32439949215912e6308
BLAKE2b-256 841e992f8d8e7a34eb0bfa12e36abf1035372b379ed2959229f7b133e40dd7b2

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