public void rebind(VariableBinding newBinding) {
used = false;
head = null;
value = null;
Literal resultLit = null;
// Can't bind the first arg if it doesn't exist!
if ( atom.getAllArguments().size() == 0 )
return;
// The arguments to a numeric function number one less than the arguments
// to the SWRL atom. The first argument to the atom is either set
// or tested against the result of the function.
Literal[] arguments = new Literal[ atom.getAllArguments().size() - 1 ];
int i = 0;
for ( AtomDObject obj : atom.getAllArguments() ) {
Literal lit = newBinding.get( obj );
if ( i == 0 ) {
if (lit != null) {
resultLit = lit;
}