Skip to content

Instantly share code, notes, and snippets.

View mhgrove's full-sized avatar

Michael Grove mhgrove

View GitHub Profile
@mhgrove
mhgrove / Example01_CreateOntology.java
Created December 6, 2010 20:16
Example programs using Ortiz, Pellet 3.0's new native API for OWL
package com.clarkparsia.pellet.examples;
import java.io.IOException;
import java.io.PrintWriter;
import com.clarkparsia.pellet.api.kb.Ontology;
import com.clarkparsia.pellet.api.kb.OntologyFactory;
import com.clarkparsia.pellet.api.kb.OntologySyntax;
import com.clarkparsia.pellet.api.term.TermFactory;
import com.clarkparsia.pellet.api.term.entity.NamedClass;
@mhgrove
mhgrove / non-determinism.owl
Created March 3, 2011 16:15
Example OWL ontology
Prefix: : <http://example.com/#>
Class: Professor
DisjointWith: Student
Class: GraduateStudent
Class: UndergraduateStudent
Class: Student
@mhgrove
mhgrove / SesameExample.java
Last active September 26, 2017 17:49
Example of how to use Stardog's Sesame bindings
/*
* Copyright (c) 2010-2015 Clark & Parsia, LLC. <http://www.clarkparsia.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@mhgrove
mhgrove / AddToJena.java
Last active February 14, 2019 07:33
Example of how to use Stardog's Jena Bindings
// start a transaction before adding the data. This is not required,
// but it is faster to group the entire add into a single transaction rather
// than rely on the auto commit of the underlying stardog connection.
aModel.begin();
// read data into the model. note, this will add statement at a time.
// Bulk loading needs to be performed directly with the BulkUpdateHandler provided
// by the underlying graph, or by reading in files in RDF/XML format, which uses the
// bulk loader natively. Alternatively, you can load data into the Stardog
// database using SNARL, or via the command line client.
@mhgrove
mhgrove / SNARLAddData.java
Last active March 21, 2017 01:48
Example of how to use the native Stardog API, SNARL
aConn.begin();
aConn.add().io()
.format(RDFFormat.N3)
.stream(new FileInputStream("data/sp2b_10k.n3"));
Model aGraph = Models2.newModel(Values.statement(Values.iri("urn:subj"),
Values.iri("urn:pred"),
Values.iri("urn:obj")));
@mhgrove
mhgrove / CreateReasoningConn.java
Last active March 21, 2017 01:48
Example of how to use Stardog's Reasoning capabilities via SNARL
ReasoningConnection aReasoningConn = ConnectionConfiguration
.to("reasoningExampleTest")
.credentials("admin", "admin")
.reasoning(true)
.connect()
.as(ReasoningConnection.class);
@mhgrove
mhgrove / FullExample.java
Last active October 5, 2015 16:51
SNARL Connection Pooling
/*
* Copyright (c) 2010-2015 Clark & Parsia, LLC. <http://www.clarkparsia.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
@mhgrove
mhgrove / AddConstraint.java
Last active October 5, 2015 17:14
ICV Example
// We'll start out by creating a validator from our SNARL Connection
ICVConnection aValidator = aConn.as(ICVConnection.class);
// add add a constraint, which must be done in a transaction.
aValidator.addConstraint(aConstraint);
@mhgrove
mhgrove / CreateDiskAndICV.java
Last active October 5, 2015 16:24
SNARL Admin
try (AdminConnection dbms = AdminConnectionConfiguration.toEmbeddedServer().credentials("admin", "admin").connect()) {
dbms.disk("icvWithGuard") // disk db named 'icvWithGuard'
.set(ICVOptions.ICV_ENABLED, true) // enable icv guard mode
.set(ICVOptions.ICV_REASONING_ENABLED, true) // specify that guard mode should use reasoning
.create(new File("data/sp2b_10k.n3")); // create the db, bulk loading the file(s) to start
}
Distinct
Projection
ProjectionElemList
ProjectionElem "g"
ProjectionElem "var35"
ProjectionElem "b"
ProjectionElem "c"
LeftJoin
LeftJoin
SingletonSet