Documentation
https://sys-bio.github.io/libOmexMeta
libOmexMeta
LibOmexMeta is a library aimed at providing developer-level support for reading, writing, editing and managing semantic annotations for biosimulation models. The COMBINE modeling community has developed consensus around how best to annotate models and how to package these models into archives (OMEX files) that include the modeling source code, the annotations, files that describe parameters and settings needed for simulations (in a SEDML file), and potentially the data used for these modeling efforts. This consensus was initially described in the publication "Harmonizing semantic annotations for computational models in biology" (Briefings in Bioinformatics, 2018).
The goal of semantic annotations are to make explicit the biology that underlies the semantics of biosimulation models. By using standard knowledge resources about biology and biological processes (such as CheBI, Uniprot, and ontologies of anatomy), we can make the models more understandable, reusable and reproducible. More information can be found at the OMEX Metadata Specification web page.
LibOmexMeta is a C++ library with a C interface that is used to build a Python front end (pyomexmeta). LibOmexMeta uses RDF as a framework for representing these annotations. At the core of libOmexMeta are the Redland libraries: - raptor2 for parsing RDF syntax into RDF graphs and serializing the output - rasqal for querying RDF graphs - librdf as a front end to raptor2 and rasqal and for triple stores.
Live demonstration
An interactive demonstration of pyomexmeta via Jupyter notebook is available via the launch binder badge above or by following this direct link. When you get to the binder site, select the file called "notebook.ipynb" to start the demo. Remember that notebooks are made of cells containing code. To execute code in a particular cell, select the cell and then pick the run button in the tool bar. The source for this live demonstration is available here: https://github.com/sys-bio/pyomexmeta-binder-notebook.
Features
Parsers
- rdfxml, ntriples, turtle, trig, rss-tag-soup, grddl, guess, rdfa, nquads, guess
Serializers
- ntriples, turtle, rdfxml-xmp, rdfxml-abbrev, rdfxml, rss-1.0, atom, dot, json-triples, json, nquads, html
Querying
- Languages
- Query result formats:
- xml, json, table, csv, mkr, tsv, html, turtle, rdfxml,
Storages modules
- hashes, memory, file, mysql, sqlite, uri, tstore (may be supported on request), postgresql (supported but not tested), virtuoso (may be supported on request),
Platform
- Windows
- Linux Ubuntu 18.04
- ManyLinux 2014
- MacOs
Installation
Python
Use pip.
$ pip install pyomexmeta
# verify its worked
$ ipython -c "import pyomexmeta"
Python 3 only - if you're not using Python 3, I recommend you upgrade.
Docker
You can get a docker image using
$ docker pull ciaranwelsh/libomexmeta
This is an Ubuntu 18.04 based container that has libOmexMeta prebuilt and installed under /libOmexMeta/install-docker. See dockerfile for full set of commands to build libOmexMeta on ubuntu.
Conda is preconfigured and pyomexmeta is installed.
Downloading Binaries
You can download binaries from the releases tab
Building from source
See the azure-pipelines.yml file to see how we build libOmexMeta on Azure Pipelines.
We use vcpkg for acquiring the dependencies that we need on all platforms. Therefore, the following works on windows, linux and macOS. Note that on linux you need gcc-9 or greater. libOmexMeta was developed with gcc-10.2.
# set variable to hold vcpkg location:
VCPKG_INSTALL_PREFIX="/full/path/to/vcpkg"
git clone https://github.com/microsoft/vcpkg.git $VCPKG_INSTALL_PREFIX
cd $VCPKG_INSTALL_PREFIX
./bootstrap-vcpkg.sh
vcpkg integrate install
vcpkg install curl pcre openssl yajl sqlite3 liblzma
Now build libOmexMeta
git clone https://github.com/sys-bio/libOmexMeta.git
cd libOmexMeta
mkdir build
cd build
cmake -DVCPKG_ROOT=$VCPKG_INSTALL_PREFIX -DCMAKE_INSTALL_PREFIX="/full/path/to/where/you/want/to/install/libomexmeta" -DBUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Release -DBUILD_PYTHON=ON ..
cmake --build . --target install --config Release -j 12
Metadata
Release files for pyomexmeta 1.2.14.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Actions Reset | |||
|---|---|---|---|---|
| pyomexmeta-1.2.14.1-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details for pyomexmeta-1.2.14.1-py3-none-win_amd64.whl |
| pyomexmeta-1.2.14.1-py3-none-manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64 | Details for pyomexmeta-1.2.14.1-py3-none-manylinux2014_x86_64.whl |
| pyomexmeta-1.2.14.1-py3-none-macosx_13_0_arm64.whl | Python 3 | none | macOS 13.0+ ARM64 | Details for pyomexmeta-1.2.14.1-py3-none-macosx_13_0_arm64.whl |
| pyomexmeta-1.2.14.1-py3-none-macosx_10_15_x86_64.whl | Python 3 | none | macOS 10.15+ x86-64 | Details for pyomexmeta-1.2.14.1-py3-none-macosx_10_15_x86_64.whl |
Total release size: 14.7 MB
Release files / pyomexmeta-1.2.14.1-py3-none-win_amd64.whl
| Download URL | pyomexmeta-1.2.14.1-py3-none-win_amd64.whl |
|---|---|
| Size | 2.9 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
836ca4d513b2ead2cfa989d7d9ad5af5144b88f79c4fbf19b0b442cff5d7f718
|
|
BLAKE2b-256 checksum How to use checksums |
816b41f5971d6490671163a92ba00875161dfd0d731acea90697e2297e6dc1a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Release files / pyomexmeta-1.2.14.1-py3-none-manylinux2014_x86_64.whl
| Download URL | pyomexmeta-1.2.14.1-py3-none-manylinux2014_x86_64.whl |
|---|---|
| Size | 5.5 MB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
6b94371ef1afad1bf15abfdb351da4dece232e40a17d9ce5edddb7f3192dac30
|
|
BLAKE2b-256 checksum How to use checksums |
738b714aa3e1c5a72a7b6398e4096e806f40aa694a5e7de7335b354c85dfe627
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Release files / pyomexmeta-1.2.14.1-py3-none-macosx_13_0_arm64.whl
| Download URL | pyomexmeta-1.2.14.1-py3-none-macosx_13_0_arm64.whl |
|---|---|
| Size | 3.0 MB |
| Tags | Python 3 macOS 13.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d38cd2d5214ad3f18a7eece1b07b9853470a1c5883641e6fefc3f9bd7344ad10
|
|
BLAKE2b-256 checksum How to use checksums |
556845c024ee9a2b9846ccbcd8bf5b8002ee696895aad52b61e99b979e798356
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Release files / pyomexmeta-1.2.14.1-py3-none-macosx_10_15_x86_64.whl
| Download URL | pyomexmeta-1.2.14.1-py3-none-macosx_10_15_x86_64.whl |
|---|---|
| Size | 3.4 MB |
| Tags | Python 3 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
8f53b5f4e56bb7031f022d279d8c6e5a0975c948ea111d5f6eee6faa87f39901
|
|
BLAKE2b-256 checksum How to use checksums |
ba723af325f2d9dbd9dfde172d4690037e808d83d44f530d8c537b8f4024e092
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.3
|
Security for pyomexmeta 1.2.14.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.