NAME
RDF::Cowl - A lightweight API for working with OWL 2 ontologies
VERSION
version 1.0.0
SYNOPSIS
use RDF::Cowl;
use boolean;
use constant ONTO => 'corpus/example_pizza.owl';
use constant NS => "http://www.co-ode.org/ontologies/pizza/pizza.owl#";
use constant CLASS_NAME => "Food";
my $manager = RDF::Cowl::Manager->new;
my $onto = do { try { $manager->read_path(ONTO) }
catch($e) { die "Failed to load ontology @{[ ONTO ]}: $e"; }
};
my $cls = RDF::Cowl::Class->from_string(NS . CLASS_NAME);
my @subclasses;
$onto->iterate_sub_classes( $cls, sub ($subclass) {
push @subclasses, $subclass->get_iri->get_rem
if $subclass->isa('RDF::Cowl::Class');
return true;
}, false );
is \@subclasses, bag {
item 'IceCream';
item 'Pizza';
item 'PizzaBase';
item 'PizzaTopping';
end();
}, 'Got Food direct subclasses';
DESCRIPTION
Cowl provides an API for parsing, querying, editing, and writing OWL 2 ontologies. It currently supports processing OWL2 Functional Syntax.
EXAMPLES
For now, the best place to look for example code is the tests under the t/upstream
directory.
SEE ALSO
AUTHOR
Zakariyya Mughal <zmughal@cpan.org>
COPYRIGHT AND LICENSE
Copyright (C) 2024 by Auto-Parallel Technologies, Inc..
This is free software, licensed under Eclipse Public License - v 2.0.