owlready2的简单介绍

1. Introduction

Owlready2 is a package for manipulating OWL 2.0 ontologies in Python. It can load, modify, save ontologies, and it supports reasoning via HermiT (included). Owlready allows a transparent access to OWL ontologies.

2. Owlready2 can:


Import ontologies in RDF/XML, OWL/XML or NTriples format.

Manipulates ontology classes, instances and annotations as if they were Python objects.


Add Python methods to ontology classes.


Re-classify instances automatically, using the HermiT reasoner.


Import medical terminologies from UMLS (see PyMedTermino2).

3. instance

from owlready2 import *

onto_path.append("/Users/a-pc/Documents/智齿科技/知识图谱")

onto = get_ontology("http://www.lesfleursdunormal.fr/static/_downloads/pizza_onto.owl")

onto.load()

get_ontology("http://www.lesfleursdunormal.fr/static/_downloads/pizza_onto.owl#")

# Create new classes in the ontology, possibly mixing OWL constructs and Python methods:

class NonVegetarianPizza(onto.Pizza):

    equivalent_to = [

        onto.Pizza

        & ( onto.has_topping.some(onto.MeatTopping)

        | onto.has_topping.some(onto.FishTopping)

        ) ]


def eat(self): print("Beurk! I'm vegetarian!")# Create new classes in the ontology, possibly mixing OWL constructs and Python methods:

class NonVegetarianPizza(onto.Pizza):

    equivalent_to = [

        onto.Pizza

        & ( onto.has_topping.some(onto.MeatTopping)

        | onto.has_topping.some(onto.FishTopping)

        ) ]


def eat(self): print("Beurk! I'm vegetarian!")


# Access the classes of the ontology, and create new instances / individuals:

test_pizza = onto.Pizza("test_pizza_owl_identifier")

test_pizza.has_topping = [ onto.CheeseTopping(), onto.TomatoTopping() ]

test_pizza.has_topping.append(onto.MeatTopping())


# Execute HermiT and reparent instances and classessync_reasoner()

test_pizza.__class__

pizza_onto.NonVegetarianPizza

test_pizza.eat()

Beurk! I'm vegetarian!

你可能感兴趣的:(owlready2的简单介绍)