Skip to main content

Tools for Automating the Construction of an Ontology (OWL)

Project description

Ontology Builder (owl-builder)

Key Term Extraction

from owl_builder import keyterms

input_text = """
A local area network (LAN) is a computer network that interconnects computers within a limited area such as a residence, school, laboratory, university campus or office building.

By contrast, a wide area network (WAN) not only covers a larger geographic distance, but also generally involves leased telecommunication circuits.

Ethernet and Wi-Fi are the two most common technologies in use for local area networks.

Historical network technologies include ARCNET, Token Ring, and AppleTalk.
"""

results = keyterms(
    input_text=input_text,
    use_openai=False,
    use_terms=True,
    use_keyterms=True,
    use_ngrams=False,
    use_nounchunks=False)

The results are

[
   "leased telecommunication circuit",
   "historical network technology",
   "large geographic distance",
   "interconnects computer",
   "local area network",
   "university campus",
   "common technology",
   "wide area network",
   "computer network",
   "office building",
   "include arcnet",
   "limited area",
   "token ring"
]

If use_openai is set to True, then the following environment variables must be set:

os.environ['USE_OPENAI'] = "True"
os.environ['OPENAI_KEY'] = "<openai-key>"
os.environ['OPENAI_ORG'] = "<openai-org>"

TTL Generation

from owl_builder import build_ttl

results = build_ttl("He has aims to make Detroit a leader in green energy.")

The result is

###  http://graffl.ai/pathology#green_energy
        :green_energy rdf:type owl:Class ;
        rdfs:label "Green Energy" ;
        rdfs:subClassOf :energy .
###  http://graffl.ai/pathology#energy
        :energy rdf:type owl:Class ;
        rdfs:label "Energy" .

You can also supply your own taxonomy like this:

import pandas as pd

results = build_ttl(pd.DataFrame([
    {"Parent": "Alpha", "Child": "Alpha Beta"},
    {"Parent": "Alpha Beta", "Child": "Alpha Beta Gamma"},
    {"Parent": "Gamma", "Child": "Gamma Delta"},
]))

The result is

###  http://graffl.ai/pathology#alpha_beta
        :alpha_beta rdf:type owl:Class ;
        rdfs:label "Alpha Beta" ;
        rdfs:subClassOf :alpha .
###  http://graffl.ai/pathology#alpha
            :alpha rdf:type owl:Class ;
            rdfs:label "Alpha" .
###  http://graffl.ai/pathology#alpha_beta_gamma
            :alpha_beta_gamma rdf:type owl:Class ;
            rdfs:label "Alpha Beta Gamma" ;
            rdfs:subClassOf :alpha_beta .
###  http://graffl.ai/pathology#alpha_beta
            :alpha_beta rdf:type owl:Class ;
            rdfs:label "Alpha Beta" .
###  http://graffl.ai/pathology#gamma_delta
            :gamma_delta rdf:type owl:Class ;
            rdfs:label "Gamma Delta" ;
            rdfs:subClassOf :gamma .
###  http://graffl.ai/pathology#gamma
            :gamma rdf:type owl:Class ;
            rdfs:label "Gamma" .

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

owl_builder-0.2.3.tar.gz (26.5 kB view details)

Uploaded Source

Built Distribution

owl_builder-0.2.3-py3-none-any.whl (46.6 kB view details)

Uploaded Python 3

File details

Details for the file owl_builder-0.2.3.tar.gz.

File metadata

  • Download URL: owl_builder-0.2.3.tar.gz
  • Upload date:
  • Size: 26.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.8.5 Windows/10

File hashes

Hashes for owl_builder-0.2.3.tar.gz
Algorithm Hash digest
SHA256 e6f35e7eb5c20debda195ee4753241588150912fd751e6de36d816841cca9277
MD5 72e11b544ae8cfb46d62bcffb9e649ca
BLAKE2b-256 dce81c2f535a3786abaa577726dd9762964edb9c2fd5eeec4890fce6814aa9ad

See more details on using hashes here.

File details

Details for the file owl_builder-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: owl_builder-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 46.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.8.5 Windows/10

File hashes

Hashes for owl_builder-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bc0b08de8138ef437c88967af51ab5152d584dc4a6114c79d26cd6bdca6db0e2
MD5 f17c24b0b6eacedeed2facc225c6fb9d
BLAKE2b-256 2bb1c9b476f46677f68c69261328a23683734afe6b39284c61e970120284845a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page