Skip to main content

Base package for the APIS framework

Project description

APIS

Django Tests GitHub release (with filter)

The Austrian Prosophographical Information System is a Django based prosopography framework. It allows to create web applications to manage both entities and relations between entities. It provides API access to the data in various formats and creates swagger defintions. A swagger-ui allows for comfortable access to the data.

Data can also be imported from remote resources described in RDF.

In addition to this configurable import of data via RDF, there is also an configurable serialization of data. The generic RestAPI of APIS provides data either in the internal JSON format, TEI or RDF (serialized with CIDOC CRM).

APIS comes with a built in system of autocompletes that allows researchers to import meta-data of entities with just a single click. Out of the box APIS supports Stanbol as a backend for the autocompletes, but the system is rather easy to adapt to any Restfull API. APIS also supports the parsing of RDFs describing entities into an entity. The parsing is configured in a settings file.

Entities

Relations

Licensing

All code unless otherwise noted is licensed under the terms of the MIT License (MIT). Please refer to the file LICENSE.txt in the root directory of this repository.

All documentation and images unless otherwise noted are licensed under the terms of Creative Commons Attribution-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/

APIS contains the "Material Symbols" font(commit ace1af0), which is licensed under the Apache License Version 2.0. The Swagger Logo in core/static/img comes from wikimedia commons and is licensed under the Creative Commons Attribution-Share Alike 4.0 International license

Installation

Create a new Django project:

django-admin startproject my_apis_instance

Add apis-core-rdf as a dependency to your project.

To use the APIS framework in your application, you will need to add the following dependencies to INSTALLED_APPS:

INSTALLED_APPS = [
    # our main app, containing the ontology (in the `models.py`)
    # and our customizations
    "sample_project",
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
    # ui stuff used by APIS
    "crispy_forms",
    "crispy_bootstrap4",
    "django_filters",
    "django_tables2",
    "dal",
    "dal_select2",
    # REST API
    "rest_framework",
    # swagger ui generation
    "drf_spectacular",
    # The APIS apps
    "apis_core.core",
    "apis_core.generic",
    "apis_core.apis_metainfo",
    "apis_core.apis_entities",
    # APIS collections provide a collection model similar to
    # SKOS collections and allow tagging of content
    "apis_core.collections",
    # APIS history modules tracks changes of instances over
    # time and lets you revert changes
    "apis_core.history",
]

Finally, add the APIS urls to your applications URL Dispatcher

urlpatterns = [
    path("", include("apis_core.urls", namespace="apis")),
    # https://docs.djangoproject.com/en/stable/topics/auth/default/#module-django.contrib.auth.views
    path("accounts/", include("django.contrib.auth.urls")),
    # https://docs.djangoproject.com/en/stable/ref/contrib/admin/#hooking-adminsite-to-urlconf
    path("admin/", admin.site.urls),
]

Now start using your Django project

./manage.py runserver

Now you should be ready to roll. Start creating your ontology.

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

apis_core_rdf-0.59.0.tar.gz (305.5 kB view details)

Uploaded Source

Built Distribution

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

apis_core_rdf-0.59.0-py3-none-any.whl (293.1 kB view details)

Uploaded Python 3

File details

Details for the file apis_core_rdf-0.59.0.tar.gz.

File metadata

  • Download URL: apis_core_rdf-0.59.0.tar.gz
  • Upload date:
  • Size: 305.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for apis_core_rdf-0.59.0.tar.gz
Algorithm Hash digest
SHA256 6c1c081df2c3b400bd42a9528e64f82670f66ebf53e221b18883562f6a6bdc4a
MD5 8e096ff48164debdd1e2d2505a79b1ef
BLAKE2b-256 51c5b1f9437cb226b3e717ffcb2e5fe5e69ffccbd53f887ef27958a174f721c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for apis_core_rdf-0.59.0.tar.gz:

Publisher: publish.yml on acdh-oeaw/apis-core-rdf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file apis_core_rdf-0.59.0-py3-none-any.whl.

File metadata

  • Download URL: apis_core_rdf-0.59.0-py3-none-any.whl
  • Upload date:
  • Size: 293.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for apis_core_rdf-0.59.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d91b83860d7f7be15ed6cbe2cb9fcd8c8f15b26f1904e9ad65cedb81ae074983
MD5 f0fa7d7b6ec505cf1982a9355795e253
BLAKE2b-256 a87ba0a74d5c46f5f18193ee81282a6f696bd1dee209e72f67e7325e76115165

See more details on using hashes here.

Provenance

The following attestation bundles were made for apis_core_rdf-0.59.0-py3-none-any.whl:

Publisher: publish.yml on acdh-oeaw/apis-core-rdf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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