package org.obda.query.domain;

import java.net.URI;

public interface Predicate {
	
	public URI getName();
	public int getArity();
	public Predicate copy();

}

@@ -55,88 +55,854 @@
 %0D%0A%0D%0A
-public interface Predicate %7B%0D%0A%09%0D%0A%09public URI getName();%0D%0A%09public int getArity();
+/**%0D%0A * A predicate is a property that the elements of the set have in common.%0D%0A * %3Cp%3E%0D%0A * The notation %7B@code P(x)%7D is used to denote a sentence or statement%0D%0A * %7B@code P%7D concerning the variable object %7B@code x%7D. Also, the set defined%0D%0A * by %7B@code P(x)%7D written %3Ccode%3E%7Bx%7CP(x)%3C/code%3E is just a collection of all%0D%0A * the objects for which %7B@code P%7D is true.%0D%0A */%0D%0Apublic interface Predicate %7B%0D%0A%0D%0A%09/**%0D%0A%09 * Get the name of the predicate. In practice, the predicate name%0D%0A%09 * is constructed as a URI to indicate a unique resource.%0D%0A%09 *%0D%0A%09 * @return the resource identifier (URI).%0D%0A%09 */%0D%0A%09public URI getName();%0D%0A%0D%0A%09/**%0D%0A%09 * Get the number of elements of the predicate.%0D%0A%09 *%0D%0A%09 * @return an integer number.%0D%0A%09 */%0D%0A%09public int getArity();%0D%0A%0D%0A%09/**%0D%0A%09 * Duplicate the object by performing a deep cloning.%0D%0A%09 *%0D%0A%09 * @return the copy of the object.%0D%0A%09 */
 %0D%0A%09p
@@ -926,13 +926,11 @@
 opy();%0D%0A
-%0D%0A
 %7D%0D%0A

Add javadoc for the interface definition.