LangChain document loaders for OpenDMA - integrate ECM systems with LangChain
Project description
LangChain OpenDMA
LangChain document loaders for OpenDMA.
OpenDMA is a vendor-neutral abstraction layer for enterprise content management
systems. It provides a common API for repositories such as Alfresco, CMOD,
Documentum, FileNet P8, OnBase, SharePoint, and other ECM or document management
platforms. This package connects that API to LangChain by loading OpenDMA
documents as langchain_core.documents.Document objects.
Use this package when you want to build LangChain applications, RAG pipelines, or content analysis workflows on top of documents stored in ECM systems.
Features
- Load documents from an OpenDMA REST service by document ID, folder ID, or query.
- Preserve OpenDMA and repository metadata on every LangChain
Document. - Process plain text content out of the box.
- Process richer document formats with optional Unstructured or Docling handlers.
- Use LangChain's sync and async document loader APIs.
Installation
Install OpenDMA and this integration from PyPI:
pip install langchain-opendma
Install optional parser integrations when you need Office, PDF, HTML, images, or other rich formats:
pip install "langchain-opendma[unstructured]"
pip install "langchain-opendma[docling]"
pip install "langchain-opendma[all]"
Quickstart
from langchain_opendma import OpenDMALoader
loader = OpenDMALoader(
endpoint="http://localhost:8080/opendma",
username="admin",
password="admin",
repository_id="my-repository",
document_ids=["some-document-id"],
)
documents = loader.load()
for document in documents:
print(document.metadata["source"])
print(document.metadata.get("opendma:Title"))
print(document.page_content)
By default, OpenDMALoader handles text/plain content. For PDF, Office,
HTML, image, and other rich formats, configure an Unstructured or Docling content
handler. See the documentation for details.
Documentation
- Tutorials: guided LangChain application tutorials
- Documentation: usage, loader options, and content handlers
- Examples: runnable examples using the tutorial repository
Development
This project uses uv for dependency management.
uv sync --all-extras
uv run pytest
uv run ruff check src tests
uv run mypy src tests
Related Projects
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file langchain_opendma-0.1.0.tar.gz.
File metadata
- Download URL: langchain_opendma-0.1.0.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
342b563a7731b815a584e57097e4ab8f3f7ebbf0bd1af7d170a3c7d17943a238
|
|
| MD5 |
d2a7642a26197a007cbc56871008bb94
|
|
| BLAKE2b-256 |
bf87567ed3d668e15156d44e4e4ea7b285219323f7d30aeaa4295d58c4dd9f2b
|
File details
Details for the file langchain_opendma-0.1.0-py3-none-any.whl.
File metadata
- Download URL: langchain_opendma-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8ed2ff8738f7c1a5efde3f22aa7dc39f9e390503700ccc194670c556a8d7e7c2
|
|
| MD5 |
c7e2bdd2d0346b902d5ce1fedc4a0b8d
|
|
| BLAKE2b-256 |
6569351bc785630c788f0234bc4edf7a19289101d33caa4722f6f239ed597c70
|