Metadata-Version: 2.4
Name: opendma-api
Version: 0.8.0
Summary: Python API for OpenDMA
Author: Stefan Kopf, OpenDMA Contributors
Maintainer: Stefan Kopf
License-Expression: Apache-2.0
Project-URL: Homepage, https://opendma.org
Project-URL: Repository, https://github.com/OpenDMA/opendma-python-api.git
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: 3.15
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# OpenDMA API for Python

At it's core, OpenDMA (Open Document Management Architecture) defines an
abstract model for Document Management and Enterprise Content Management
Systems.

The OpenDMA API provides an abstract interface to this model. It allows
to write content centric applications once, and run them against multiple
different Enterprise Content and Document Management Systems.

The API is available for different programming languages and enforces a
consistent style across these languages.

This repository contains the OpenDMA API for Python.

It has been auto-generated by the [OpenDMA API Builder](https://github.com/OpenDMA/opendma-api-builder).

## Installation

This project is available on [PyPI](https://pypi.org/). You can simply install it with pip:
```
pip install opendma-api
```

## Usage

The OpenDMA API defines a set of interfaces (ABCs in python) that need to be implemented by an
OpenDMA Adaptor for an actual ECM system -- very similar to database drivers.

There is a generic [OpenDMA REST Client for Python](https://github.com/OpenDMA/opendma-python-remote)
implementing this API on top of the [OpenDMA REST API](https://github.com/OpenDMA/opendma-spec/blob/main/opendma-rest-api-spec.yaml).
With the help of REST-ful servers and clients it is possible to bridge programming language and network boundaries.

You can find multiple examples for Python in the [OpenDMA REST Client for Python](https://github.com/OpenDMA/opendma-python-remote) repository.

There is also a complete [OpenDMA Tutorial for Java](https://github.com/OpenDMA/opendma-java-tutorial)
showing the basic concepts which apply to Python as well.
