Metadata-Version: 2.1
Name: oldaplib
Version: 0.1.99
Summary: Open Media Access Server Library (Linked Open Data middleware/RESTApi)
License: GNU Affero General Public License version 3
Author: Lukas Rosenthaler
Author-email: lukas.rosenthaler@unibas.ch
Requires-Python: >=3.12,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: bcrypt (>=4.1.2,<5.0.0)
Requires-Dist: cloudpickle (>=3.1.1,<4.0.0)
Requires-Dist: coverage (>=7.10.4,<8.0.0)
Requires-Dist: isodate (>=0.7.2,<0.8.0)
Requires-Dist: lazydocs (>=0.4.8,<0.5.0)
Requires-Dist: mkdocs (>=1.5.3,<2.0.0)
Requires-Dist: mkdocs-material (>=9.6.17,<10.0.0)
Requires-Dist: mkdocstrings (>=0.30.0,<0.31.0)
Requires-Dist: mkdocstrings-python (>=1.17.0,<2.0.0)
Requires-Dist: pyjwt (>=2.8.0,<3.0.0)
Requires-Dist: pymdown-extensions (>=10.10.2,<11.0.0)
Requires-Dist: pyshacl (>=0.30.1,<0.31.0)
Requires-Dist: pystrict (>=1.3,<2.0)
Requires-Dist: pyyaml (>=6.0.2,<7.0.0)
Requires-Dist: rdflib (>=7.0.0,<8.0.0)
Requires-Dist: redis (>=6.4.0,<7.0.0)
Requires-Dist: requests (>=2.32.5,<3.0.0)
Requires-Dist: setuptools (>=80.9.0,<81.0.0)
Requires-Dist: validators (>=0.35.0,<0.36.0)
Requires-Dist: xmlschema (>=4.1.0,<5.0.0)
Requires-Dist: yamale (>=6.0.0,<7.0.0)
Description-Content-Type: text/markdown

# OLDAPlib
Basic library for OLDAP Python-based backend. OLDAP relies as much as possible on
standard ontologies. Currently, the following ontologies are being used:
- xs: `<http://www.w3.org/2001/XMLSchema#>`
- rdf: `<http://www.w3.org/1999/02/22-rdf-syntax-ns#>`
- rdfs: `<http://www.w3.org/2000/01/rdf-schema#>`
- owl: `<http://www.w3.org/2002/07/owl#>`
- skos: `<http://www.w3.org/2004/02/skos/core#>`
- sh: `<http://www.w3.org/ns/shacl#>`

## Setup of IRI's and namespaces

The generic base IRI that is to be used has the form of
```
http://oldap.org/<location>
```
`<location>` is a **unique name** identifying the OLDAP installation of the
type [NCName](https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-NCName).

### System namespace

#### System ontologies and SHACL files
All system relevant definitions like system-wide ontologies or shacl definitions
are in a graph named
```
http://oldap.org/base#
```

#### System-wide data
Data such as project information, user data etc. is in a graph named
```
http://oldap.org/<location>/data#
```

### Project specific graphs
Each project has several namespaces (aka "named graphs")

#### Project specific data
All project specific data resides in a graph named
```
http://oldap.org/<location>/<project>/data#
```
The project name must be unique to the location and is of
type [NCName](https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-NCName).


