use of org.w3._2005.atom in project packages-jpl by SWI-Prolog.
the class Test_String method testStringXput2.
@Test
public void testStringXput2() {
String s1 = "\u0000\u007F\u0080\u00FF";
String s2 = "\u0100\u7FFF\u8000\uFFFF";
// concatenate in Java
String s = s1 + s2;
// concatenate
Term a = Query.oneSolution("string_concat(?,?,S)", new Term[] { new Atom(s1), new Atom(s2) }).get("S");
// in
// Prolog
assertEquals(s, a.name());
assertEquals("string", a.atomType());
}
use of org.w3._2005.atom in project packages-jpl by SWI-Prolog.
the class Family method run.
public void run() {
Map<String, Term> solution;
Variable X = new Variable("X");
// --------------------------------------------------
Query q2 = new Query("child_of", new Term[] { new Atom("joe"), new Atom("ralf") });
System.err.println("child_of(joe,ralf) is " + (q2.hasSolution() ? "provable" : "not provable"));
new Query("sleep", new Term[] { new org.jpl7.Integer(delay) }).hasSolution();
// --------------------------------------------------
Query q3 = new Query("descendent_of", new Term[] { new Atom("steve"), new Atom("ralf") });
System.err.println("descendent_of(steve,ralf) is " + (q3.hasSolution() ? "provable" : "not provable"));
new Query("sleep", new Term[] { new org.jpl7.Integer(delay) }).hasSolution();
// --------------------------------------------------
Query q4 = new Query("descendent_of", new Term[] { X, new Atom("ralf") });
solution = q4.oneSolution();
System.err.println("first solution of descendent_of(X, ralf)");
System.err.println("X = " + solution.get(X.name));
new Query("sleep", new Term[] { new org.jpl7.Integer(delay) }).hasSolution();
// --------------------------------------------------
Map<String, Term>[] solutions = q4.allSolutions();
System.err.println("all solutions of descendent_of(X, ralf)");
for (int i = 0; i < solutions.length; i++) {
System.err.println("X = " + solutions[i].get(X.name));
}
new Query("sleep", new Term[] { new org.jpl7.Integer(delay) }).hasSolution();
// --------------------------------------------------
System.err.println("each solution of descendent_of(X, ralf)");
while (q4.hasMoreSolutions()) {
solution = q4.nextSolution();
System.err.println("X = " + solution.get(X.name));
}
new Query("sleep", new Term[] { new org.jpl7.Integer(delay) }).hasSolution();
// --------------------------------------------------
Variable Y = new Variable("Y");
Query q5 = new Query("descendent_of", new Term[] { X, Y });
System.err.println(id + ": each solution of descendent_of(X, Y)");
while (q5.hasMoreSolutions()) {
solution = q5.nextSolution();
System.err.println(id + ": X = " + solution.get(X.name) + ", Y = " + solution.get(Y.name));
new Query("sleep", new Term[] { new org.jpl7.Integer(delay) }).hasSolution();
}
}
use of org.w3._2005.atom in project parliament by SemWebCentral.
the class SWRL2Sesame method getRules.
@SuppressWarnings({ "rawtypes", "deprecation" })
public static List<SWRLRule> getRules(String uri) throws Exception {
List<SWRLRule> rules = new ArrayList<>();
JAXBContext jc = JAXBContext.newInstance("org.w3._2003._11.swrlx");
Unmarshaller u = jc.createUnmarshaller();
u.setValidating(true);
Ontology ont = (Ontology) u.unmarshal(new File(uri));
List list = ont.getVersionInfoOrPriorVersionOrBackwardCompatibleWith();
for (Object o : list) {
if (o instanceof Imp) {
rules.add(new SWRLRule((Imp) o));
}
}
return rules;
}
use of org.w3._2005.atom in project parliament by SemWebCentral.
the class SWRLRule method runHead.
@SuppressWarnings("rawtypes")
public void runHead(RdfRepository repository, String[] variables, List<Value> values) throws Exception {
Map<String, Value> boundVars = new HashMap<>();
// bind variables
for (int i = 0; i < values.size(); ++i) {
boundVars.put(variables[i], values.get(i));
}
// run body builtins
for (SWRLBuiltin builtin : _builtins) {
builtin.run(this, boundVars);
}
// process head atoms
Iterator headAtoms = _rule.getHead().getClassAtomOrDatarangeAtomOrIndividualPropertyAtom().iterator();
while (headAtoms.hasNext()) {
Object atom = headAtoms.next();
Resource subj = null;
URI pred = null;
Value obj = null;
if (atom instanceof ClassAtom) {
ClassAtom ca = (ClassAtom) atom;
subj = (Resource) boundVars.get(ca.getVar());
pred = (URI) getValue(URIImpl.RDF_TYPE);
obj = getValue(ca.getClazz());
} else if (atom instanceof DatavaluedPropertyAtom) {
DatavaluedPropertyAtom dpa = (DatavaluedPropertyAtom) atom;
subj = (Resource) getValue(dpa.getContent().get(0), boundVars);
pred = (URI) getValue(dpa.getProperty());
obj = getValue(dpa.getContent().get(1), boundVars);
// convert value if necessary
if (obj instanceof Resource) {
obj = new LiteralImpl(obj.toString());
}
} else if (atom instanceof IndividualPropertyAtom) {
IndividualPropertyAtom ipa = (IndividualPropertyAtom) atom;
subj = (Resource) getValue(ipa.getContent().get(0), boundVars);
pred = (URI) getValue(ipa.getProperty());
obj = getValue(ipa.getContent().get(1), boundVars);
// convert value if necessary
if (obj instanceof Literal) {
obj = getValue(obj.toString());
}
} else if (atom instanceof SameIndividualAtom) {
SameIndividualAtom sia = (SameIndividualAtom) atom;
subj = (Resource) getValue(sia.getIndividualOrVar().get(0), boundVars);
pred = repository.getValueFactory().createURI(OWL.SAMEAS);
obj = getValue(sia.getIndividualOrVar().get(1), boundVars);
} else if (atom instanceof DifferentIndividualsAtom) {
System.err.println("head differentIndividualsAtom not yet implemented");
} else if (atom instanceof BuiltinAtom) {
System.err.println("head builtinAtom not allowed");
} else {
System.err.println("unexpected head atom class " + atom.getClass());
}
repository.addStatement(subj, pred, obj);
// XXX - mark statement as inferred
}
}
use of org.w3._2005.atom in project packages-jpl by SWI-Prolog.
the class TestJUnit method testAtomEquality2.
public void testAtomEquality2() {
Atom a = new Atom("a");
assertTrue("two references to an Atom are equal by .equals()", a.equals(a));
}
Aggregations