All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ontoware.rdf2go.model.Statement Maven / Gradle / Ivy

Go to download

RDF2go is an implementation-independent Java API with the design goals: portability (hence the name), performance and ease of implementation. This project was started at FZI Forschungszentrum Informatik Karlsruhe, Germany - www.fzi.de

The newest version!
/**
 * LICENSE INFORMATION
 * 
 * Copyright 2005-2008 by FZI (http://www.fzi.de). Licensed under a BSD license
 * (http://www.opensource.org/licenses/bsd-license.php)  = Max Völkel
 *  = FZI Forschungszentrum Informatik Karlsruhe, Karlsruhe,
 * Germany  = 2010
 * 
 * Further project information at http://semanticweb.org/wiki/RDF2Go
 */

package org.ontoware.rdf2go.model;

import java.io.Serializable;

import org.ontoware.rdf2go.model.node.Node;
import org.ontoware.rdf2go.model.node.Resource;
import org.ontoware.rdf2go.model.node.URI;


/**
 * Statement representation in rdf2go
 * 
 * Implementations of Statement should have valid implementations of hashCode
 * and equals.
 * 
 * Compared by subject
 * 
 * @author mvo
 * 
 */
public interface Statement extends Comparable, TriplePattern, Serializable {
	
	/**
	 * Note: this was set to be a Model before, but that would have
	 * caused problems, when people accesssed the model via the Statement.
	 * (compare to Jena, where graph and Model are separated. We are here on
	 * graph level)
	 * 
	 * @return the context, where this statement was created. Returns null when
	 *         not in a ModelSet.
	 */
	public URI getContext();
	
	/**
	 * 
	 * @return URI or BlankNode
	 */
	@Override
    public Resource getSubject();
	
	/**
	 * @return The URI representing the predicate (property)
	 */
	@Override
    public URI getPredicate();
	
	/**
	 * @return URI, String, TypedLiteral, LanguageTaggedLiteral or BlankNode
	 */
	@Override
    public Node getObject();
	
	/**
	 * debug output. Lazy implementation can just do nothing.
	 * 
	 * @param options undocumented :-) Depends on underlying implementation. See
	 *            source code.
	 */
	public void dump(String[] options);
	
	@Override
    public int hashCode();
	
	@Override
    public boolean equals(Object other);
	
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy