Cargando…
owlcpp: a C++ library for working with OWL ontologies
BACKGROUND: The increasing use of ontologies highlights the need for a library for working with ontologies that is efficient, accessible from various programming languages, and compatible with common computational platforms. RESULTS: We developed owlcpp, a library for storing and searching RDF tripl...
Autores principales: | , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
BioMed Central
2015
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4574266/ https://www.ncbi.nlm.nih.gov/pubmed/26388983 http://dx.doi.org/10.1186/s13326-015-0035-z |
_version_ | 1782390601124151296 |
---|---|
author | Levin, Mikhail K. Cowell, Lindsay G. |
author_facet | Levin, Mikhail K. Cowell, Lindsay G. |
author_sort | Levin, Mikhail K. |
collection | PubMed |
description | BACKGROUND: The increasing use of ontologies highlights the need for a library for working with ontologies that is efficient, accessible from various programming languages, and compatible with common computational platforms. RESULTS: We developed owlcpp, a library for storing and searching RDF triples, parsing RDF/XML documents, converting triples into OWL axioms, and reasoning. The library is written in ISO-compliant C++ to facilitate efficiency, portability, and accessibility from other programming languages. Internally, owlcpp uses the Raptor RDF Syntax library for parsing RDF/XML and the FaCT++ library for reasoning. The current version of owlcpp is supported under Linux, OSX, and Windows platforms and provides an API for Python. CONCLUSIONS: The results of our evaluation show that, compared to other commonly used libraries, owlcpp is significantly more efficient in terms of memory usage and searching RDF triple stores. owlcpp performs strict parsing and detects errors ignored by other libraries, thus reducing the possibility of incorrect semantic interpretation of ontologies. owlcpp is available at http://owl-cpp.sf.net/ under the Boost Software License, Version 1.0. ELECTRONIC SUPPLEMENTARY MATERIAL: The online version of this article (doi:10.1186/s13326-015-0035-z) contains supplementary material, which is available to authorized users. |
format | Online Article Text |
id | pubmed-4574266 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2015 |
publisher | BioMed Central |
record_format | MEDLINE/PubMed |
spelling | pubmed-45742662015-09-19 owlcpp: a C++ library for working with OWL ontologies Levin, Mikhail K. Cowell, Lindsay G. J Biomed Semantics Software BACKGROUND: The increasing use of ontologies highlights the need for a library for working with ontologies that is efficient, accessible from various programming languages, and compatible with common computational platforms. RESULTS: We developed owlcpp, a library for storing and searching RDF triples, parsing RDF/XML documents, converting triples into OWL axioms, and reasoning. The library is written in ISO-compliant C++ to facilitate efficiency, portability, and accessibility from other programming languages. Internally, owlcpp uses the Raptor RDF Syntax library for parsing RDF/XML and the FaCT++ library for reasoning. The current version of owlcpp is supported under Linux, OSX, and Windows platforms and provides an API for Python. CONCLUSIONS: The results of our evaluation show that, compared to other commonly used libraries, owlcpp is significantly more efficient in terms of memory usage and searching RDF triple stores. owlcpp performs strict parsing and detects errors ignored by other libraries, thus reducing the possibility of incorrect semantic interpretation of ontologies. owlcpp is available at http://owl-cpp.sf.net/ under the Boost Software License, Version 1.0. ELECTRONIC SUPPLEMENTARY MATERIAL: The online version of this article (doi:10.1186/s13326-015-0035-z) contains supplementary material, which is available to authorized users. BioMed Central 2015-09-16 /pmc/articles/PMC4574266/ /pubmed/26388983 http://dx.doi.org/10.1186/s13326-015-0035-z Text en © Levin and Cowell. 2015 Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. The Creative Commons Public Domain Dedication waiver (http://creativecommons.org/publicdomain/zero/1.0/) applies to the data made available in this article, unless otherwise stated. |
spellingShingle | Software Levin, Mikhail K. Cowell, Lindsay G. owlcpp: a C++ library for working with OWL ontologies |
title | owlcpp: a C++ library for working with OWL ontologies |
title_full | owlcpp: a C++ library for working with OWL ontologies |
title_fullStr | owlcpp: a C++ library for working with OWL ontologies |
title_full_unstemmed | owlcpp: a C++ library for working with OWL ontologies |
title_short | owlcpp: a C++ library for working with OWL ontologies |
title_sort | owlcpp: a c++ library for working with owl ontologies |
topic | Software |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4574266/ https://www.ncbi.nlm.nih.gov/pubmed/26388983 http://dx.doi.org/10.1186/s13326-015-0035-z |
work_keys_str_mv | AT levinmikhailk owlcppaclibraryforworkingwithowlontologies AT cowelllindsayg owlcppaclibraryforworkingwithowlontologies |