public NonIntegerNumericInferenceRule(TypeFactory typeFactory) { integerDatatype = typeFactory.getXsdIntegerDatatype(); decimalDatatype = typeFactory.getXsdDecimalDatatype(); }
sqlToTermBuilder.put(Types.SMALLINT, typeFactory.getXsdIntegerDatatype()); sqlToTermBuilder.put(Types.TINYINT, typeFactory.getXsdIntegerDatatype()); sqlToTermBuilder.put(Types.NUMERIC, typeFactory.getXsdDecimalDatatype()); sqlToTermBuilder.put(Types.DECIMAL, typeFactory.getXsdDecimalDatatype()); datatypeBuilder.put(typeFactory.getDatatype(XSD.INT), Types.INTEGER); datatypeBuilder.put(typeFactory.getXsdIntegerDatatype(), Types.BIGINT); datatypeBuilder.put(typeFactory.getXsdDecimalDatatype(), Types.DECIMAL); //BC: needs to be checked datatypeBuilder.put(typeFactory.getDatatype(XSD.LONG), Types.BIGINT); datatypeBuilder.put(typeFactory.getDatatype(XSD.NEGATIVE_INTEGER), Types.BIGINT);
@Override public void visit(SWRLLiteralArgument node) { OWLLiteral literal=node.getLiteral(); if (literal.isBoolean()) terms.add(termFactory.getBooleanConstant(literal.parseBoolean())); else if(literal.hasLang()) terms.add(termFactory.getConstantLiteral(literal.getLiteral(), literal.getLang())); else if (literal.isDouble()) terms.add(termFactory.getConstantLiteral(literal.getLiteral(), typeFactory.getXsdDoubleDatatype())); else if (literal.isFloat()) terms.add(termFactory.getConstantLiteral(literal.getLiteral(), typeFactory.getXsdDecimalDatatype())); else if (literal.isInteger()) terms.add(termFactory.getConstantLiteral(literal.getLiteral(), typeFactory.getXsdIntegerDatatype())); else termFactory.getConstantLiteral(literal.getLiteral()); }