Prolog module pl_owl
. Predicates for querieng RDF graphs using OWL Semantics.
Use module pl_owl
in your code.
Example:
:- use_module(library(`pl_owl`)).
hallo :-
owl_assert_individual(my_ns:my_individual, my_ns:'my-class', 'Some Individual', catalog_graph).
Few utilities predicate to create and remove owl individuals and resolve the owl relations with respect to the OWL semantics.
Asserts the named individual of Class
with the SubjectIri
IRI and
% assigns it label Label
. The individual is asserted into the graph Graph
Unifies the Timestamp
with the DateTime
compound coresponding to the lexical form of RDF. TimeStamp
can be atom now
to get compound for the current timestamp.
Unifies Text
with the xsd representation of the date_time/7
compound.
Unifies Atom with the atomic representation of the Object
, which is either atomic representation of literal or a label of the resource represented by the Object
.
Succeeds if Subject
is reachable to Object
with respect to OWL semantics. It uses the semantics of rdf_reachable/3 but Resource is not considered to be reachable to itself unless:
- the
Property
makesSubject
orObject
reacheble to itself by a non- transistive closure, usingrdf_has/3
and theProperty
is not irreflexive; or - the
Property
us reflexive
The honors handles subpropertyOf
, inverseOf
, transient
, reflexive
, and irreflexive
properties of the `Property.
Removes all rdf entries from the Graph
where Individual
is either in the subject or object role.
The script run-tests.ps1
executes the tests
To debug the module, load the debug.pl
file into prolog top.