@Override public Literal apply(final ABox abox, final Literal expected, final Literal... args) { if (args.length != 1) return null; final String val = ATermUtils.getLiteralValue(args[0].getTerm()); final String length = Integer.toString(val.length()); final Literal result = abox.addLiteral(ATermUtils.makeTypedLiteral(length, Namespaces.XSD + "integer")); return expectedIfEquals(expected, result); }
@Override public Literal apply(final ABox abox, final Literal expected, final Literal... args) { if (args.length != 1) return null; final String val = ATermUtils.getLiteralValue(args[0].getTerm()); final String length = Integer.toString(val.length()); final Literal result = abox.addLiteral(ATermUtils.makeTypedLiteral(length, Namespaces.XSD + "integer")); return expectedIfEquals(expected, result); }
@Override public Literal apply(final ABox abox, final Literal expected, final Literal... litArgs) { final String[] args = new String[litArgs.length]; for (int i = 0; i < litArgs.length; i++) args[i] = ATermUtils.getLiteralValue(litArgs[i].getTerm()); final String result = _function.apply(args); if (result == null) return null; ATermAppl resultTerm; if (_datatypeURI == null) resultTerm = ATermUtils.makePlainLiteral(result); else resultTerm = ATermUtils.makeTypedLiteral(result, _datatypeURI); final Literal resultLit = abox.addLiteral(resultTerm); return expectedIfEquals(expected, resultLit); }
@Override public Literal apply(final ABox abox, final Literal expected, final Literal... litArgs) { final String[] args = new String[litArgs.length]; for (int i = 0; i < litArgs.length; i++) args[i] = ATermUtils.getLiteralValue(litArgs[i].getTerm()); final String result = _function.apply(args); if (result == null) return null; ATermAppl resultTerm; if (_datatypeURI == null) resultTerm = ATermUtils.makePlainLiteral(result); else resultTerm = ATermUtils.makeTypedLiteral(result, _datatypeURI); final Literal resultLit = abox.addLiteral(resultTerm); return expectedIfEquals(expected, resultLit); }