Skip to main content

SOFT7 semantic interoperability framework.

Project description

SOFT7

OTEAPI plugin

The soft7 packages comes with an OTEAPI plugin that allows one to convert any core parser data to a SOFT7 Entity instance.

To use the plugin, call the 'soft7' functionType function strategy.

Test the plugin

At the root of the repository is a Docker Compose file, which, when run, will start an OTEAPI Service that includes the soft7 OTEAPI plugin.

To start the service, run:

docker compose pull
docker compose up -d

To follow along with the installation of the soft7 package and startup of the OTEAPI Service, run:

docker logs -f soft7-oteapi-1

Press Ctrl+C to stop following the logs.

To eventually stop the services, run:

docker compose down

But first, let's test the plugin.

Open a Python shell, an IPython shell, or a Jupyter Notebook, and run:

from s7.factories import create_datasource

# Let us use an OPTIMADE structure from the Materials Project as our "raw" data source.
# The chosen structure is mp-1228448 (Al2O3):
# https://materialsproject.org/materials/mp-1228448/
# For more information about OPTIMADE, see https://www.optimade.org/
# For more information about the Materials Project, see https://materialsproject.org/
dataresource_config = {
    "downloadUrl": (
        "https://optimade.materialsproject.org/v1/structures/mp-1228448?"
        "response_format=json"
    ),
    "mediaType": "application/json",
}

# We need to setup a mapping configuration to tell the plugin how to map the OPTIMADE
# structure to a SOFT7 Entity instance.
# This requires knowledge of the OPTIMADE structure and the SOFT7 Entity.
# In our case the OPTIMADE structure specification is available at
# https://github.com/Materials-Consortia/OPTIMADE/blob/v1.1.0/optimade.rst#structures-entries
# and the SOFT7 Entity of choice is the `OPTIMADEStructure` Entity, which can be found
# at http://onto-ns.com/meta/1.0/OPTIMADEStructure
mapping_config = {
    "mappingType": "triples",
    "prefixes": {
        "optimade": "https://optimade.materialsproject.org/v1/structures/mp-1228448#",
        "soft7": "http://onto-ns.com/meta/1.0/OPTIMADEStructure#",
    },
    "triples": {
        ("optimade:data.id", "", "soft7:properties.id"),
        ("optimade:data.type", "", "soft7:properties.type"),
        ("optimade:data.attributes", "", "soft7:properties."),
    },
}

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

soft7-0.4.0.tar.gz (72.1 kB view details)

Uploaded Source

Built Distribution

soft7-0.4.0-py3-none-any.whl (38.3 kB view details)

Uploaded Python 3

File details

Details for the file soft7-0.4.0.tar.gz.

File metadata

  • Download URL: soft7-0.4.0.tar.gz
  • Upload date:
  • Size: 72.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for soft7-0.4.0.tar.gz
Algorithm Hash digest
SHA256 eef719aaff815848d46d4425e08c80e2455ff0a0f0108d834a4fdfec0e9c885a
MD5 ff6b4902bf8d9deb4cbcba780561c8ba
BLAKE2b-256 566d6bda9c4952d1fcd2e5589bd030e6a719a6b2b124cac5625ce48860bbf982

See more details on using hashes here.

Provenance

The following attestation bundles were made for soft7-0.4.0.tar.gz:

Publisher: cd_publish.yml on SINTEF/soft7

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

File details

Details for the file soft7-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: soft7-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 38.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for soft7-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ea83e80b8ea04b49f66bb2990429021129291b186bef89180a0c1d2ec07e8cac
MD5 5f6ca15865e8de22ea782121da5f3ab7
BLAKE2b-256 5290ae20faf27406fd41c9d8826320fc168bc5b101388b7d614171e8e7f3665a

See more details on using hashes here.

Provenance

The following attestation bundles were made for soft7-0.4.0-py3-none-any.whl:

Publisher: cd_publish.yml on SINTEF/soft7

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 Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page