@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.StrAtom tmp = (org.apache.stanbol.rules.manager.atoms.StrAtom) ruleAtom; IObjectAtom uriResource = tmp.getUriResource(); SWRLAtom swrlAtom = (SWRLAtom) adapter.adaptTo(uriResource, SWRLRule.class); if (swrlAtom instanceof ArgumentSWRLAtom) { return (T) swrlAtom; } else { throw new RuleAtomCallExeption(getClass()); } }
@Override public synchronized void removeRuleAdapter(RuleAdapter ruleAdapter) throws UnavailableRuleObjectException { ruleAdapters.remove(ruleAdapter.getExportClass()); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnsupportedTypeForExportException, UnavailableRuleObjectException { org.apache.stanbol.rules.manager.atoms.CreateLabelAtom tmp = (org.apache.stanbol.rules.manager.atoms.CreateLabelAtom) ruleAtom; StringFunctionAtom stringFunctionAtom = tmp.getStringFunctionAtom(); System.out.println("Argument instance of " + stringFunctionAtom.getClass().getCanonicalName()); SPARQLObject sparqlArgument1 = adapter.adaptTo(stringFunctionAtom, SPARQLObject.class); String argument = sparqlArgument1.getObject(); if (argument.startsWith(Symbols.variablesPrefix)) { argument = "?" + argument.replace(Symbols.variablesPrefix, ""); } String sparql = "<http://www.stlab.istc.cnr.it/semion/function#createLabel>(" + argument + ")"; return (T) new SPARQLFunction(sparql); } }
@Override public synchronized void removeRuleAdapter(RuleAdapter ruleAdapter) throws UnavailableRuleObjectException { ruleAdapters.remove(ruleAdapter.getExportClass()); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.DifferentAtom tmp = (org.apache.stanbol.rules.manager.atoms.DifferentAtom) ruleAtom; ExpressionAtom expressionAtom1 = tmp.getStringFunctionAtom1(); ExpressionAtom expressionAtom2 = tmp.getStringFunctionAtom2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(expressionAtom1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(expressionAtom2, SPARQLObject.class); String argument1 = sparqlArgument1.getObject(); String argument2 = sparqlArgument2.getObject(); argument1 = argument1.replace(Symbols.variablesPrefix, ""); argument2 = argument2.replace(Symbols.variablesPrefix, ""); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(argument1); sb.append("!="); sb.append(argument2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); }
@Override public synchronized void addRuleAdapter(RuleAdapter ruleAdapter) throws UnavailableRuleObjectException { ruleAdapters.put(ruleAdapter.getExportClass(), ruleAdapter); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.MultiplicationAtom tmp = (org.apache.stanbol.rules.manager.atoms.MultiplicationAtom) ruleAtom; NumericFunctionAtom argument1 = tmp.getNumericFunctionAtom1(); NumericFunctionAtom argument2 = tmp.getNumericFunctionAtom2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String sparqlFunction1 = sparqlArgument1.getObject(); String sparqlFunction2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(sparqlFunction1); sb.append(" * "); sb.append(sparqlFunction2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); }
@Override public synchronized void addRuleAdapter(RuleAdapter ruleAdapter) throws UnavailableRuleObjectException { ruleAdapters.put(ruleAdapter.getExportClass(), ruleAdapter); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.LessEqualThanAtom tmp = (org.apache.stanbol.rules.manager.atoms.LessEqualThanAtom) ruleAtom; ExpressionAtom argument1 = tmp.getArgument1(); ExpressionAtom argument2 = tmp.getArgument2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String arg1 = sparqlArgument1.getObject(); String arg2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(arg1); sb.append(" <= "); sb.append(arg2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); }
@Override public synchronized void addRuleAdapter(RuleAdapter ruleAdapter) throws UnavailableRuleObjectException { ruleAdapters.put(ruleAdapter.getExportClass(), ruleAdapter); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnsupportedTypeForExportException, UnavailableRuleObjectException { org.apache.stanbol.rules.manager.atoms.GreaterEqualThanAtom tmp = (org.apache.stanbol.rules.manager.atoms.GreaterEqualThanAtom) ruleAtom; ExpressionAtom argument1 = tmp.getArgument1(); ExpressionAtom argument2 = tmp.getArgument2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String arg1 = sparqlArgument1.getObject(); String arg2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(arg1); sb.append(" >= "); sb.append(arg2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); }
@Override public synchronized void removeRuleAdapter(RuleAdapter ruleAdapter) throws UnavailableRuleObjectException { ruleAdapters.remove(ruleAdapter.getExportClass()); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnsupportedTypeForExportException, UnavailableRuleObjectException { org.apache.stanbol.rules.manager.atoms.DivisionAtom tmp = (org.apache.stanbol.rules.manager.atoms.DivisionAtom) ruleAtom; NumericFunctionAtom argument1 = tmp.getNumericFunctionAtom1(); NumericFunctionAtom argument2 = tmp.getNumericFunctionAtom2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String sparqlFunction1 = sparqlArgument1.getObject(); String sparqlFunction2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(sparqlFunction1); sb.append("/"); sb.append(sparqlFunction2); sb.append(")"); return (T) new SPARQLFunction(sb.toString()); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnsupportedTypeForExportException, UnavailableRuleObjectException { org.apache.stanbol.rules.manager.atoms.GreaterThanAtom tmp = (org.apache.stanbol.rules.manager.atoms.GreaterThanAtom) ruleAtom; ExpressionAtom argument1 = tmp.getArgument1(); ExpressionAtom argument2 = tmp.getArgument2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String arg1 = sparqlArgument1.getObject(); String arg2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(arg1); sb.append(" > "); sb.append(arg2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.LessThanAtom tmp = (org.apache.stanbol.rules.manager.atoms.LessThanAtom) ruleAtom; ExpressionAtom argument1 = tmp.getArgument1(); ExpressionAtom argument2 = tmp.getArgument2(); SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String arg1 = sparqlArgument1.getObject(); String arg2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(arg1); sb.append(" < "); sb.append(arg2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); } }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.IndividualPropertyAtom tmp = (org.apache.stanbol.rules.manager.atoms.IndividualPropertyAtom) ruleAtom; SPARQLObject sparqlArgument1 = adapter.adaptTo(tmp.getArgument1(), SPARQLObject.class); SPARQLObject sparqlDT = adapter.adaptTo(tmp.getObjectProperty(), SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(tmp.getArgument2(), SPARQLObject.class); return (T) new SPARQLTriple(sparqlArgument1.getObject() + " " + sparqlDT.getObject() + " " + sparqlArgument2.getObject()); }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.DatavaluedPropertyAtom tmp = (org.apache.stanbol.rules.manager.atoms.DatavaluedPropertyAtom) ruleAtom; SPARQLObject sparqlArgument1 = adapter.adaptTo(tmp.getArgument1(), SPARQLObject.class); SPARQLObject sparqlDT = adapter.adaptTo(tmp.getDatatypeProperty(), SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(tmp.getArgument2(), SPARQLObject.class); return (T) new SPARQLTriple(sparqlArgument1.getObject() + " " + sparqlDT.getObject() + " " + sparqlArgument2.getObject()); } }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.NewLiteralAtom tmp = (org.apache.stanbol.rules.manager.atoms.NewLiteralAtom) ruleAtom; SPARQLObject binding = adapter.adaptTo(tmp.getBinding(), SPARQLObject.class); SPARQLObject variable = adapter.adaptTo(tmp.getNewNodeVariable(), SPARQLObject.class); SPARQLObject sparqlObject = new SPARQLFunction("BIND(" + binding.getObject() + " AS " + variable.getObject() + ")"); return (T) sparqlObject; }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.NewIRIAtom tmp = (org.apache.stanbol.rules.manager.atoms.NewIRIAtom) ruleAtom; SPARQLObject binding = adapter.adaptTo(tmp.getBinding(), SPARQLObject.class); SPARQLObject variable = adapter.adaptTo(tmp.getNewNodeVariable(), SPARQLObject.class); SPARQLObject sparqlObject = new SPARQLFunction("BIND(" + "IRI(" + binding.getObject() + ") AS " + variable.getObject() + ")"); return (T) sparqlObject; } }
@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption { org.apache.stanbol.rules.manager.atoms.SumAtom tmp = (org.apache.stanbol.rules.manager.atoms.SumAtom) ruleAtom; NumericFunctionAtom argument1 = tmp.getNumericFunctionAtom1(); NumericFunctionAtom argument2 = tmp.getNumericFunctionAtom2(); try { SPARQLObject sparqlArgument1 = adapter.adaptTo(argument1, SPARQLObject.class); SPARQLObject sparqlArgument2 = adapter.adaptTo(argument2, SPARQLObject.class); String sparqlFunction1 = sparqlArgument1.getObject(); String sparqlFunction2 = sparqlArgument2.getObject(); StringBuilder sb = new StringBuilder(); sb.append("("); sb.append(sparqlFunction1); sb.append(" + "); sb.append(sparqlFunction2); sb.append(")"); return (T) new SPARQLComparison(sb.toString()); } catch (UnsupportedTypeForExportException e) { throw new org.apache.stanbol.rules.base.api.RuleAtomCallExeption(getClass()); } catch (UnavailableRuleObjectException e) { throw new org.apache.stanbol.rules.base.api.RuleAtomCallExeption(getClass()); } }