Skip to main content

A simple abstraction layer in Python for building knowledge graphs

Project description

kglab

DOI GitHub commit activity Checked with mypy

The kglab library provides a simple abstraction layer in Python for building knowledge graphs.

Welcome to graph-based data science: https://derwen.ai/docs/kgl/

SPECIAL REQUEST:
Which features would you like in an open source Python library for building knowledge graphs?
Please add your suggestions through this survey:
https://forms.gle/FMHgtmxHYWocprMn6
This will help us prioritize the kglab roadmap.

Getting Started

See the "Getting Started" section of the online documentation.

To install from PyPi:

pip install kglab

If you work directly from this Git repo, be sure to install the dependencies as well:

pip install -r requirements.txt

Then to use the library with a simple use case:

import kglab

# create a KnowledgeGraph object
kg = kglab.KnowledgeGraph()

# load RDF from a URL
kg.load_rdf("http://bigasterisk.com/foaf.rdf", format="xml")

# measure the graph
measure = kglab.Measure()
measure.measure_graph(kg)

print("edges: {}\n".format(measure.get_edge_count()))
print("nodes: {}\n".format(measure.get_node_count()))

# serialize as a string in "Turtle" TTL format
ttl = kg.save_rdf_text()
print("```")
print(ttl[:999])
print("```")

See the tutorial notebooks in the examples subdirectory for sample code and patterns to use in integrating kglab with other graph libraries in Python: https://derwen.ai/docs/kgl/tutorial/

Semantic Versioning

Before kglab reaches release v1.0.0 the types and classes may undergo substantial changes and the project is not guaranteed to have a consistent API. Even so, we will try to minimize breaking changes and provide careful notes in the changelog.txt file.

Contributing Code

We welcome people getting involved as contributors to this open source project! Please see the CONTRIBUTING.md file for instructions.

Build Instructions

Note: unless you are contributing code and updates, in most use cases won't need to build this package locally.

Instead, simply install from PyPi or Conda.

To set up the build environment locally, see the "Build Instructions" section of the online documentation.

illustration of a knowledge graph, plus laboratory glassware

License and Copyright

Source code for kglab plus its logo, documentation, and examples have an MIT license which is succinct and simplifies use in commercial applications.

All materials herein are Copyright © 2020-2021 Derwen, Inc.

Attribution

Please use the following BibTeX entry for citing kglab if you use it in your research or software. Citations are helpful for the continued development and maintenance of this library.

@software{kglab,
  author = {Paco Nathan},
  title = {{kglab: a simple abstraction layer in Python for building knowledge graphs}},
  year = 2020,
  publisher = {Derwen},
  doi = {10.5281/zenodo.4516509},
  url = {https://github.com/DerwenAI/kglab}
}

Kudos

Many thanks to our contributors: @ceteri, @gauravjaglan, @louisguitton, @jake-aft, @dmoore247, plus general support from Derwen, Inc., KFocus, the NVidia RAPIDS team, Gradient Flow, the KGC Community, Connected Data London, and Manning Publications.

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

kglab-0.2.1.tar.gz (30.4 kB view details)

Uploaded Source

Built Distribution

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

kglab-0.2.1-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file kglab-0.2.1.tar.gz.

File metadata

  • Download URL: kglab-0.2.1.tar.gz
  • Upload date:
  • Size: 30.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for kglab-0.2.1.tar.gz
Algorithm Hash digest
SHA256 093aa389631b59cb744fc412a508f0d7aee9873b76d551a5c3d4ec1d513e7b39
MD5 631d3ae4f3ef3588d6369c6d1ac4530b
BLAKE2b-256 ca614c42b88ddabb22212eb7a3fa75f567f34c576398758c58344aea6c7d7e00

See more details on using hashes here.

File details

Details for the file kglab-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: kglab-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 31.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for kglab-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e5d1d2732301092636d99a93c6307d9e3de75d87bb73b31d81287235ab310c45
MD5 5f0a559c25e82e0880fa3e29d33b52fa
BLAKE2b-256 6b14cba3ac6d6a4d45b0772e7047da89042098d05faae4f59e6873ae96033cc1

See more details on using hashes here.

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