You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by cl...@apache.org on 2015/08/07 20:56:20 UTC

[09/13] jena git commit: Added throw exception documentation

http://git-wip-us.apache.org/repos/asf/jena/blob/2c0454c6/jena-permissions/src/main/java/org/apache/jena/permissions/model/SecuredModel.java
----------------------------------------------------------------------
diff --git a/jena-permissions/src/main/java/org/apache/jena/permissions/model/SecuredModel.java b/jena-permissions/src/main/java/org/apache/jena/permissions/model/SecuredModel.java
index f0088aa..e16f735 100644
--- a/jena-permissions/src/main/java/org/apache/jena/permissions/model/SecuredModel.java
+++ b/jena-permissions/src/main/java/org/apache/jena/permissions/model/SecuredModel.java
@@ -17,27 +17,28 @@
  */
 package org.apache.jena.permissions.model;
 
-import java.io.InputStream ;
-import java.io.OutputStream ;
-import java.io.Reader ;
-import java.io.Writer ;
-import java.util.Calendar ;
-import java.util.Iterator ;
-import java.util.List ;
-
-import org.apache.jena.datatypes.RDFDatatype ;
-import org.apache.jena.graph.Node ;
-import org.apache.jena.graph.Triple ;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.Reader;
+import java.io.Writer;
+import java.util.Calendar;
+import java.util.Iterator;
+import java.util.List;
+
+import org.apache.jena.datatypes.RDFDatatype;
+import org.apache.jena.graph.Node;
+import org.apache.jena.graph.Triple;
 import org.apache.jena.permissions.graph.SecuredGraph;
 import org.apache.jena.permissions.graph.SecuredPrefixMapping;
 import org.apache.jena.permissions.model.impl.SecuredNodeIterator;
 import org.apache.jena.permissions.model.impl.SecuredRSIterator;
 import org.apache.jena.permissions.model.impl.SecuredResIterator;
 import org.apache.jena.permissions.model.impl.SecuredStatementIterator;
-import org.apache.jena.rdf.model.* ;
+import org.apache.jena.rdf.model.*;
 import org.apache.jena.shared.AddDeniedException;
+import org.apache.jena.shared.AuthenticationRequiredException;
 import org.apache.jena.shared.DeleteDeniedException;
-import org.apache.jena.shared.PropertyNotFoundException ;
+import org.apache.jena.shared.PropertyNotFoundException;
 import org.apache.jena.shared.ReadDeniedException;
 import org.apache.jena.shared.UpdateDeniedException;
 
@@ -46,8 +47,7 @@ import org.apache.jena.shared.UpdateDeniedException;
  * 
  * Use the SecuredModel.Factory to create instances
  */
-public interface SecuredModel extends Model, SecuredPrefixMapping
-{
+public interface SecuredModel extends Model, SecuredPrefixMapping {
 
 	@Override
 	public SecuredModel abort();
@@ -57,184 +57,236 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Create for each statement as a triple.
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final List<Statement> statements )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final List<Statement> statements)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create for each statement in the securedModel as a triple.
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Model m ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Model m) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create the triple SecTriple(s,p,o)
+	 * @sec.triple Create the triple Triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Resource s, final Property p, final RDFNode o )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Resource s, final Property p, final RDFNode o)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create the triple SecTriple(s,p,o)
+	 * @sec.triple Create the triple Triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Resource s, final Property p, final String o )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Resource s, final Property p, final String o)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create the triple SecTriple(s,p,o)
+	 * @sec.triple Create the triple Triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Resource s, final Property p,
-			final String o, final boolean wellFormed )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Resource s, final Property p, final String o,
+			final boolean wellFormed) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create the triple SecTriple(s,p,literal(lex,datatype))
+	 * @sec.triple Create the triple Triple(s,p,literal(lex,datatype))
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Resource s, final Property p,
-			final String lex, final RDFDatatype datatype )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Resource s, final Property p,
+			final String lex, final RDFDatatype datatype)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create the triple SecTriple(s,p,literal(o,l,false))
+	 * @sec.triple Create the triple Triple(s,p,literal(o,l,false))
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Resource s, final Property p,
-			final String o, final String l ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Resource s, final Property p, final String o,
+			final String l) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create the statement as a triple
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Statement s ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Statement s) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create all the statements as triples.
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final Statement[] statements )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final Statement[] statements)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create all the statements as triples.
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel add( final StmtIterator iter )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel add(final StmtIterator iter) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final boolean o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final boolean o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final char o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final char o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final double o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final double o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final float o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final float o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final int o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final int o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final Literal o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final Literal o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final long o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final long o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Create triple(s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
 	@Deprecated
-	public SecuredModel addLiteral( final Resource s, final Property p,
-			final Object o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredModel addLiteral(final Resource s, final Property p,
+			final Object o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	@Override
-	public SecuredRDFNode asRDFNode( final Node n );
+	public SecuredRDFNode asRDFNode(final Node n);
 
 	@Override
 	/**
@@ -245,9 +297,12 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
 	 * @throws ReadException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
-	public SecuredStatement asStatement( final Triple t )
-			throws UpdateDeniedException, AddDeniedException, ReadDeniedException;
+	public SecuredStatement asStatement(final Triple t)
+			throws UpdateDeniedException, AddDeniedException,
+			ReadDeniedException, AuthenticationRequiredException;
 
 	@Override
 	public SecuredModel begin();
@@ -257,605 +312,737 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, SecNode.ANY )
+	 * @sec.triple Read Triple( s, p, SecNode.ANY )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean contains( final Resource s, final Property p )
-			throws ReadDeniedException;
+	public boolean contains(final Resource s, final Property p)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, o )
+	 * @sec.triple Read Triple( s, p, o )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean contains( final Resource s, final Property p, final RDFNode o )
-			throws ReadDeniedException;
+	public boolean contains(final Resource s, final Property p, final RDFNode o)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, o )
+	 * @sec.triple Read Triple( s, p, o )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean contains( final Resource s, final Property p, final String o )
-			throws ReadDeniedException;
+	public boolean contains(final Resource s, final Property p, final String o)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o,l,null) )
+	 * @sec.triple Read Triple( s, p, literal(o,l,null) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean contains( final Resource s, final Property p,
-			final String o, final String l ) throws ReadDeniedException;
+	public boolean contains(final Resource s, final Property p, final String o,
+			final String l) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @sec.triple Read s as a triple with null replaced by SecNode.ANY
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean contains( final Statement s ) throws ReadDeniedException;
+	public boolean contains(final Statement s) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @sec.triple Read every statement in securedModel.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsAll( final Model model )	throws ReadDeniedException;
+	public boolean containsAll(final Model model) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @sec.triple Read every statement
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsAll( final StmtIterator iter )
-			throws ReadDeniedException;
+	public boolean containsAll(final StmtIterator iter)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read any statement in securedModel to be included in check, if
-	 *            no
-	 *            statement in securedModel can be read will return false;
+	 * @sec.triple Read any statement in securedModel to be included in check,
+	 *             if no statement in securedModel can be read will return
+	 *             false;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsAny( final Model model )
-			throws ReadDeniedException;
+	public boolean containsAny(final Model model) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @sec.triple Read any statement in iter to be included in check, if no
-	 *            statement in iter can be read will return false;
+	 *             statement in iter can be read will return false;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsAny( final StmtIterator iter )
-			throws ReadDeniedException;
+	public boolean containsAny(final StmtIterator iter)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o) )
+	 * @sec.triple Read Triple( s, p, literal(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final boolean o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final boolean o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o) )
+	 * @sec.triple Read Triple( s, p, literal(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final char o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final char o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o) )
+	 * @sec.triple Read Triple( s, p, literal(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final double o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final double o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o) )
+	 * @sec.triple Read Triple( s, p, literal(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final float o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final float o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o) )
+	 * @sec.triple Read Triple( s, p, literal(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final int o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final int o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, literal(o) )
+	 * @sec.triple Read Triple( s, p, literal(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final long o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final long o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, typedLiteral(o) )
+	 * @sec.triple Read Triple( s, p, typedLiteral(o) )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsLiteral( final Resource s, final Property p,
-			final Object o ) throws ReadDeniedException;
+	public boolean containsLiteral(final Resource s, final Property p,
+			final Object o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( s, p, resource) where SecTriple(s,p,resource) is in the
-	 *            securedModel.
+	 * @sec.triple Read Triple( s, p, resource) where Triple(s,p,resource) is in
+	 *             the securedModel.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean containsResource( final RDFNode r )
-			throws ReadDeniedException;
+	public boolean containsResource(final RDFNode r)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( SecNode.ANY, RDF.type, Rdf.Alt)
+	 * @sec.triple Create Triple( SecNode.ANY, RDF.type, Rdf.Alt)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredAlt createAlt() throws AddDeniedException, UpdateDeniedException; 
+	public SecuredAlt createAlt() throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( uri, RDF.type, Rdf.Alt)
+	 * @sec.triple Create Triple( uri, RDF.type, Rdf.Alt)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredAlt createAlt( final String uri )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredAlt createAlt(final String uri) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( SecNode.ANY, RDF.type, Rdf.Bag)
+	 * @sec.triple Create Triple( SecNode.ANY, RDF.type, Rdf.Bag)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredBag createBag() throws AddDeniedException, UpdateDeniedException; 
+	public SecuredBag createBag() throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( uri, RDF.type, Rdf.Bag)
+	 * @sec.triple Create Triple( uri, RDF.type, Rdf.Bag)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredBag createBag( final String uri )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredBag createBag(final String uri) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredRDFList createList() throws AddDeniedException, UpdateDeniedException; 
+	public SecuredRDFList createList() throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( RDF.nil, SecNode.IGNORE, SecNode.IGNORE)
-	 * @sec.triple Create for each member SecTriple(SecNode.ANY,
-	 *            RDF.first.asNode(),
-	 *            member.asNode())
-	 * @sec.triple Create SecTriple(SecNode.ANY, RDF.rest.asNode(), SecNode.ANY)
+	 * @sec.triple Create Triple( RDF.nil, SecNode.IGNORE, SecNode.IGNORE)
+	 * @sec.triple Create for each member Triple(SecNode.ANY,
+	 *             RDF.first.asNode(), member.asNode())
+	 * @sec.triple Create Triple(SecNode.ANY, RDF.rest.asNode(), SecNode.ANY)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredRDFList createList( final Iterator<? extends RDFNode> members )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredRDFList createList(final Iterator<? extends RDFNode> members)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( RDF.nil, SecNode.IGNORE, SecNode.IGNORE)
-	 * @sec.triple Create for each member SecTriple(SecNode.ANY,
-	 *            RDF.first.asNode(),
-	 *            member.asNode())
-	 * @sec.triple Create SecTriple(SecNode.ANY, RDF.rest.asNode(), SecNode.ANY)
+	 * @sec.triple Create Triple( RDF.nil, SecNode.IGNORE, SecNode.IGNORE)
+	 * @sec.triple Create for each member Triple(SecNode.ANY,
+	 *             RDF.first.asNode(), member.asNode())
+	 * @sec.triple Create Triple(SecNode.ANY, RDF.rest.asNode(), SecNode.ANY)
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredRDFList createList( final RDFNode[] members )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredRDFList createList(final RDFNode[] members)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final boolean o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final boolean o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final char o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final char o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final double o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final double o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final float o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final float o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final int o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final int o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final long o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final long o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
+	 * @sec.triple Create Triple( s,p,o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createLiteralStatement( final Resource s,
-			final Property p, final Object o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createLiteralStatement(final Resource s,
+			final Property p, final Object o) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
-	/**
-	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
-	 * @throws UpdateDeniedException
-	 * @throws AddDeniedException
-	 */
 	@Override
-	public Property createProperty( final String uri )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredProperty createProperty(final String uri);
 
-	/**
-	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s,p,o )
-	 * @throws UpdateDeniedException
-	 * @throws AddDeniedException
-	 */
 	@Override
-	public Property createProperty( final String nameSpace,
-			final String localName ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredProperty createProperty(final String nameSpace,
+			final String localName);
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Read s as a triple
-	 * @sec.triple create SecTriple( SecNode.Future, RDF.subject, t.getSubject()
-	 *            )
-	 * @sec.triple create SecTriple( SecNode.Future, RDF.subject,
-	 *            t.getPredicate() )
-	 * @sec.triple create SecTriple( SecNode.Future, RDF.subject, t.getObject() )
+	 * @sec.triple create Triple( SecNode.Future, RDF.subject, t.getSubject() )
+	 * @sec.triple create Triple( SecNode.Future, RDF.subject, t.getPredicate()
+	 *             )
+	 * @sec.triple create Triple( SecNode.Future, RDF.subject, t.getObject() )
 	 * @throws UpdateDeniedException
 	 * @throws ReadDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public ReifiedStatement createReifiedStatement( final Statement s )
-			throws AddDeniedException, UpdateDeniedException, ReadDeniedException;
+	public ReifiedStatement createReifiedStatement(final Statement s)
+			throws AddDeniedException, UpdateDeniedException,
+			ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Read s as a triple
-	 * @sec.triple create SecTriple( uri, RDF.subject, t.getSubject() )
-	 * @sec.triple create SecTriple( uri, RDF.subject, t.getPredicate() )
-	 * @sec.triple create SecTriple( uri, RDF.subject, t.getObject() )
+	 * @sec.triple create Triple( uri, RDF.subject, t.getSubject() )
+	 * @sec.triple create Triple( uri, RDF.subject, t.getPredicate() )
+	 * @sec.triple create Triple( uri, RDF.subject, t.getObject() )
 	 * @throws UpdateDeniedException
 	 * @throws ReadDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public ReifiedStatement createReifiedStatement( final String uri,
-			final Statement s ) throws AddDeniedException, UpdateDeniedException, ReadDeniedException;
+	public ReifiedStatement createReifiedStatement(final String uri,
+			final Statement s) throws AddDeniedException,
+			UpdateDeniedException, ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Read s as a triple
-	 * @sec.triple Create SecTriple( SecNode.FUTURE, SecNode.IGNORE,
-	 *            SecNode.IGNORE )
+	 * @sec.triple Create Triple( SecNode.FUTURE, SecNode.IGNORE, SecNode.IGNORE
+	 *             )
 	 * @throws UpdateDeniedException
 	 * @throws ReadDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResource createResource() throws AddDeniedException, UpdateDeniedException, ReadDeniedException;
+	public SecuredResource createResource() throws AddDeniedException,
+			UpdateDeniedException, ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
 	 * @sec.triple Read s as a triple
-	 * @sec.triple Create SecTriple( Anonymous(id), SecNode.IGNORE,
-	 *            SecNode.IGNORE )
+	 * @sec.triple Create Triple( Anonymous(id), SecNode.IGNORE, SecNode.IGNORE
+	 *             )
 	 * @throws UpdateDeniedException
 	 * @throws ReadDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResource createResource( final AnonId id )
-			throws AddDeniedException, UpdateDeniedException, ReadDeniedException;
+	public SecuredResource createResource(final AnonId id)
+			throws AddDeniedException, UpdateDeniedException,
+			ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( SecNode.FUTURE, RDF.type, type )
+	 * @sec.triple Create Triple( SecNode.FUTURE, RDF.type, type )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResource createResource( final Resource type )
-			throws AddDeniedException, UpdateDeniedException;
+	public SecuredResource createResource(final Resource type)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	@Override
 	@Deprecated
-	public SecuredResource createResource( final ResourceF f );
+	public SecuredResource createResource(final ResourceF f);
 
 	@Override
-	public SecuredResource createResource( final String uri );
+	public SecuredResource createResource(final String uri);
 
 	/**
 	 * @sec.graph Update if uri exists
 	 * @sec.graph Create if uri does not exist
-	 * @sec.triple Read if SecTriple( uri, RDF.type, type ) exists
-	 * @sec.triple Create if SecTriple( uri, RDF.type, type ) does not exist
+	 * @sec.triple Read if Triple( uri, RDF.type, type ) exists
+	 * @sec.triple Create if Triple( uri, RDF.type, type ) does not exist
 	 * @throws UpdateDeniedException
 	 * @throws ReadDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResource createResource( final String uri, final Resource type )
-			throws AddDeniedException, UpdateDeniedException, ReadDeniedException;
+	public SecuredResource createResource(final String uri, final Resource type)
+			throws AddDeniedException, UpdateDeniedException,
+			ReadDeniedException, AuthenticationRequiredException;
 
 	@Override
 	@Deprecated
-	public SecuredResource createResource( final String uri, final ResourceF f );
+	public SecuredResource createResource(final String uri, final ResourceF f);
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( SecNode.FUTURE, RDF.type, RDF.Alt )
+	 * @sec.triple Create Triple( SecNode.FUTURE, RDF.type, RDF.Alt )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredSeq createSeq() throws AddDeniedException, UpdateDeniedException; 
+	public SecuredSeq createSeq() throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( uri, RDF.type, RDF.Alt )
+	 * @sec.triple Create Triple( uri, RDF.type, RDF.Alt )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredSeq createSeq( final String uri )
-			throws AddDeniedException, UpdateDeniedException;
+	public SecuredSeq createSeq(final String uri) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s, p, o )
+	 * @sec.triple Create Triple( s, p, o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createStatement( final Resource s,
-			final Property p, final RDFNode o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createStatement(final Resource s, final Property p,
+			final RDFNode o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s, p, o )
+	 * @sec.triple Create Triple( s, p, o )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createStatement( final Resource s,
-			final Property p, final String o ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createStatement(final Resource s, final Property p,
+			final String o) throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s, p, o )
+	 * @sec.triple Create Triple( s, p, o )
 	 * @throws AddDeniedException
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createStatement( final Resource s,
-			final Property p, final String o, final boolean wellFormed )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createStatement(final Resource s, final Property p,
+			final String o, final boolean wellFormed)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s, p, literal(o,l,false ))
+	 * @sec.triple Create Triple( s, p, literal(o,l,false ))
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createStatement( final Resource s,
-			final Property p, final String o, final String l )
-			throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createStatement(final Resource s, final Property p,
+			final String o, final String l) throws AddDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Update
-	 * @sec.triple Create SecTriple( s, p, literal(o,l,wellFormed )
+	 * @sec.triple Create Triple( s, p, literal(o,l,wellFormed )
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement createStatement( final Resource s,
-			final Property p, final String o, final String l,
-			final boolean wellFormed ) throws AddDeniedException, UpdateDeniedException; 
+	public SecuredStatement createStatement(final Resource s, final Property p,
+			final String o, final String l, final boolean wellFormed)
+			throws AddDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final boolean v );
+	public SecuredLiteral createTypedLiteral(final boolean v);
 
 	@Override
-	public Literal createTypedLiteral( final Calendar d );
+	public Literal createTypedLiteral(final Calendar d);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final char v );
+	public SecuredLiteral createTypedLiteral(final char v);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final double v );
+	public SecuredLiteral createTypedLiteral(final double v);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final float v );
+	public SecuredLiteral createTypedLiteral(final float v);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final int v );
+	public SecuredLiteral createTypedLiteral(final int v);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final long v );
+	public SecuredLiteral createTypedLiteral(final long v);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final Object value );
+	public SecuredLiteral createTypedLiteral(final Object value);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final Object value,
-			final RDFDatatype dtype );
+	public SecuredLiteral createTypedLiteral(final Object value,
+			final RDFDatatype dtype);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final Object value,
-			final String typeURI );
+	public SecuredLiteral createTypedLiteral(final Object value,
+			final String typeURI);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final String v );
+	public SecuredLiteral createTypedLiteral(final String v);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final String lex,
-			final RDFDatatype dtype );
+	public SecuredLiteral createTypedLiteral(final String lex,
+			final RDFDatatype dtype);
 
 	@Override
-	public SecuredLiteral createTypedLiteral( final String lex,
-			final String typeURI );
+	public SecuredLiteral createTypedLiteral(final String lex,
+			final String typeURI);
 
 	/**
 	 * @sec.graph Read
 	 * @sec.triple Read for every triple contributed to the difference.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public Model difference( final Model model ) throws ReadDeniedException;
+	public Model difference(final Model model) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read if read lock is requested
 	 * @sec.graph Update if write lock is requested
 	 * @throws ReadDeniedException
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public void enterCriticalSection( final boolean readLockRequested ) throws ReadDeniedException, UpdateDeniedException;
+	public void enterCriticalSection(final boolean readLockRequested)
+			throws ReadDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public String expandPrefix( final String prefixed ) throws ReadDeniedException;
+	public String expandPrefix(final String prefixed)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( resource, RDF.type, RDF.alt )
+	 * @sec.triple Read Triple( resource, RDF.type, RDF.alt )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredAlt getAlt( final Resource r ) throws ReadDeniedException;
+	public SecuredAlt getAlt(final Resource r) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( uri, RDF.type, RDF.alt )
+	 * @sec.triple Read Triple( uri, RDF.type, RDF.alt )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredAlt getAlt( final String uri ) throws ReadDeniedException;
+	public SecuredAlt getAlt(final String uri) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read if statement exists
 	 * @sec.graph Update if statement does not exist
 	 * @sec.triple Read s as a triple
-	 * @sec.triple Read SecTriple( result, RDF.subject, s.getSubject() ) if
-	 *            reification existed
-	 * @sec.triple Read SecTriple( result, RDF.predicate, s.getPredicate() ) if
-	 *            reification existed
-	 * @sec.triple Read SecTriple( result, RDF.object, s.getObject() ) if
-	 *            reification existed
-	 * @sec.triple Create SecTriple( result, RDF.subject, s.getSubject() ) if
-	 *            reification did not exist.
-	 * @sec.triple Create SecTriple( result, RDF.redicate, s.getPredicate() ) if
-	 *            reification did not exist
-	 * @sec.triple Create SecTriple( result, RDF.object, s.getObject() ) if
-	 *            reification did not exist
+	 * @sec.triple Read Triple( result, RDF.subject, s.getSubject() ) if
+	 *             reification existed
+	 * @sec.triple Read Triple( result, RDF.predicate, s.getPredicate() ) if
+	 *             reification existed
+	 * @sec.triple Read Triple( result, RDF.object, s.getObject() ) if
+	 *             reification existed
+	 * @sec.triple Create Triple( result, RDF.subject, s.getSubject() ) if
+	 *             reification did not exist.
+	 * @sec.triple Create Triple( result, RDF.redicate, s.getPredicate() ) if
+	 *             reification did not exist
+	 * @sec.triple Create Triple( result, RDF.object, s.getObject() ) if
+	 *             reification did not exist
 	 * @throws ReadDeniedException
 	 * @throws UpdateDeniedException
 	 * @throws AddDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResource getAnyReifiedStatement( final Statement s )
-			throws AddDeniedException, ReadDeniedException, UpdateDeniedException;
+	public SecuredResource getAnyReifiedStatement(final Statement s)
+			throws AddDeniedException, ReadDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( resource, RDF.type, RDF.Bag )
+	 * @sec.triple Read Triple( resource, RDF.type, RDF.Bag )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredBag getBag( final Resource r ) throws ReadDeniedException;
+	public SecuredBag getBag(final Resource r) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
-	 * @sec.triple Read SecTriple( uri, RDF.type, RDF.Bag )
+	 * @sec.triple Read Triple( uri, RDF.type, RDF.Bag )
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredBag getBag( final String uri ) throws ReadDeniedException;
+	public SecuredBag getBag(final String uri) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	@Override
 	public SecuredGraph getGraph();
@@ -864,103 +1051,130 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.graph Read
 	 * @sec.triple Read on the returned statement.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement getProperty( final Resource s, final Property p ) throws ReadDeniedException;
+	public SecuredStatement getProperty(final Resource s, final Property p)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public Property getProperty( final String uri ) throws ReadDeniedException;
+	public Property getProperty(final String uri) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public Property getProperty( final String nameSpace, final String localName ) throws ReadDeniedException;
+	public Property getProperty(final String nameSpace, final String localName)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * @sec.graph Read if the node exists
 	 * @sec.graph Update if the node does not exist
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public RDFNode getRDFNode( final Node n ) throws ReadDeniedException;
+	public RDFNode getRDFNode(final Node n) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
-	 * .
-	 * If the PropertyNotFoundException was thrown by the enclosed securedModel
-	 * and the
-	 * user can not read SecTriple(s, p, SecNode.ANY) AccessDeniedExcepiton is
-	 * thrown,
-	 * otherwise the PropertyNotFoundException will be thrown.
+	 * . If the PropertyNotFoundException was thrown by the enclosed
+	 * securedModel and the user can not read Triple(s, p, SecNode.ANY)
+	 * AccessDeniedExcepiton is thrown, otherwise the PropertyNotFoundException
+	 * will be thrown.
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on the returned statement
-	 * @sec.triple Read on SecTriple(s, p, SecNode.ANY) if
-	 *            PropertyNotFoundException
-	 *            was thrown
+	 * @sec.triple Read on Triple(s, p, SecNode.ANY) if
+	 *             PropertyNotFoundException was thrown
 	 * @throws ReadDeniedException
 	 * @throws PropertyNotFoundException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatement getRequiredProperty( final Resource s,
-			final Property p ) throws PropertyNotFoundException, ReadDeniedException;
+	public SecuredStatement getRequiredProperty(final Resource s,
+			final Property p) throws PropertyNotFoundException,
+			ReadDeniedException, AuthenticationRequiredException;
 
 	@Override
-	public SecuredResource getResource( final String uri );
+	public SecuredResource getResource(final String uri);
 
 	@Override
 	@Deprecated
-	public SecuredResource getResource( final String uri, final ResourceF f );
+	public SecuredResource getResource(final String uri, final ResourceF f);
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read on SecTriple(resource, RDF.type, RDF.Seq)
+	 * @sec.triple Read on Triple(resource, RDF.type, RDF.Seq)
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredSeq getSeq( final Resource r ) throws ReadDeniedException;
+	public SecuredSeq getSeq(final Resource r) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read on SecTriple(uri, RDF.type, RDF.Seq)
+	 * @sec.triple Read on Triple(uri, RDF.type, RDF.Seq)
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredSeq getSeq( final String uri ) throws ReadDeniedException;
+	public SecuredSeq getSeq(final String uri) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples contributed to the new securedModel.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public Model intersection( final Model model ) throws ReadDeniedException;
+	public Model intersection(final Model model) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean isEmpty() throws ReadDeniedException;
+	public boolean isEmpty() throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read all compared triples. Triples that can not be read will
-	 *            not be compared.
+	 *             not be compared.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean isIsomorphicWith( final Model g ) throws ReadDeniedException;
+	public boolean isIsomorphicWith(final Model g) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -968,405 +1182,512 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Read on s as triple
 	 * @sec.triple Read on at least one set reified statements.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public boolean isReified( final Statement s ) throws ReadDeniedException;
+	public boolean isReified(final Statement s) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
 	public SecuredStatementIterator listLiteralStatements(
 			final Resource subject, final Property predicate,
-			final boolean object ) throws ReadDeniedException;
+			final boolean object) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 
 	@Override
 	public SecuredStatementIterator listLiteralStatements(
-			final Resource subject, final Property predicate, final char object ) throws ReadDeniedException;
+			final Resource subject, final Property predicate, final char object)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 
 	@Override
 	public SecuredStatementIterator listLiteralStatements(
 			final Resource subject, final Property predicate,
-			final double object ) throws ReadDeniedException;
+			final double object) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
 	public SecuredStatementIterator listLiteralStatements(
-			final Resource subject, final Property predicate, final float object ) throws ReadDeniedException;
+			final Resource subject, final Property predicate, final float object)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 
 	@Override
 	public SecuredStatementIterator listLiteralStatements(
-			final Resource subject, final Property predicate, final long object ) throws ReadDeniedException;
+			final Resource subject, final Property predicate, final long object)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public NsIterator listNameSpaces() throws ReadDeniedException;
+	public NsIterator listNameSpaces() throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on each RDFNode returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredNodeIterator<RDFNode> listObjects() throws ReadDeniedException;
+	public SecuredNodeIterator<RDFNode> listObjects()
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on each RDFNode returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredNodeIterator<RDFNode> listObjectsOfProperty( final Property p ) throws ReadDeniedException;
+	public SecuredNodeIterator<RDFNode> listObjectsOfProperty(final Property p)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on each RDFNode returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredNodeIterator<RDFNode> listObjectsOfProperty( final Resource s,
-			final Property p ) throws ReadDeniedException;
+	public SecuredNodeIterator<RDFNode> listObjectsOfProperty(final Resource s,
+			final Property p) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on each Reified statement returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredRSIterator listReifiedStatements() throws ReadDeniedException;
+	public SecuredRSIterator listReifiedStatements()
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on each Reified statement returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredRSIterator listReifiedStatements( final Statement st ) throws ReadDeniedException;
+	public SecuredRSIterator listReifiedStatements(final Statement st)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final boolean o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final boolean o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final char o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final char o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final double o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final double o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final float o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final float o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final long o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final long o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned;
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned;
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final Object o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final Object o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listResourcesWithProperty( final Property p,
-			final RDFNode o ) throws ReadDeniedException;
+	public SecuredResIterator listResourcesWithProperty(final Property p,
+			final RDFNode o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatementIterator listStatements() throws ReadDeniedException;
+	public SecuredStatementIterator listStatements()
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatementIterator listStatements( final Resource s,
-			final Property p, final RDFNode o ) throws ReadDeniedException;
+	public SecuredStatementIterator listStatements(final Resource s,
+			final Property p, final RDFNode o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatementIterator listStatements( final Resource subject,
-			final Property predicate, final String object )  throws ReadDeniedException;
+	public SecuredStatementIterator listStatements(final Resource subject,
+			final Property predicate, final String object)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatementIterator listStatements( final Resource subject,
-			final Property predicate, final String object, final String lang ) throws ReadDeniedException;
+	public SecuredStatementIterator listStatements(final Resource subject,
+			final Property predicate, final String object, final String lang)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all triples returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredStatementIterator listStatements( final Selector s ) throws ReadDeniedException;
+	public SecuredStatementIterator listStatements(final Selector s)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listSubjects() throws ReadDeniedException;
+	public SecuredResIterator listSubjects() throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listSubjectsWithProperty( final Property p ) throws ReadDeniedException;
+	public SecuredResIterator listSubjectsWithProperty(final Property p)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listSubjectsWithProperty( final Property p,
-			final RDFNode o ) throws ReadDeniedException;
+	public SecuredResIterator listSubjectsWithProperty(final Property p,
+			final RDFNode o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listSubjectsWithProperty( final Property p,
-			final String o ) throws ReadDeniedException;
+	public SecuredResIterator listSubjectsWithProperty(final Property p,
+			final String o) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
-	 * @sec.triple Read at least one SecTriple( resource, p, o ) for each
-	 *            resource
-	 *            returned
+	 * @sec.triple Read at least one Triple( resource, p, o ) for each resource
+	 *             returned
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredResIterator listSubjectsWithProperty( final Property p,
-			final String o, final String l ) throws ReadDeniedException;
+	public SecuredResIterator listSubjectsWithProperty(final Property p,
+			final String o, final String l) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredPrefixMapping lock() throws ReadDeniedException;
+	public SecuredPrefixMapping lock() throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	@Override
-	public SecuredModel notifyEvent( final Object e );
+	public SecuredModel notifyEvent(final Object e);
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public String qnameFor( final String uri ) throws ReadDeniedException;
+	public String qnameFor(final String uri) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel query( final Selector s ) throws ReadDeniedException;
+	public SecuredModel query(final Selector s) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final InputStream in, final String base ) throws UpdateDeniedException;
+	public SecuredModel read(final InputStream in, final String base)
+			throws UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final InputStream in, final String base,
-			final String lang ) throws UpdateDeniedException;
+	public SecuredModel read(final InputStream in, final String base,
+			final String lang) throws UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final Reader reader, final String base ) throws UpdateDeniedException;
+	public SecuredModel read(final Reader reader, final String base)
+			throws UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final Reader reader, final String base,
-			final String lang ) throws UpdateDeniedException;
+	public SecuredModel read(final Reader reader, final String base,
+			final String lang) throws UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final String url ) throws UpdateDeniedException;
+	public SecuredModel read(final String url) throws UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final String url, final String lang ) throws UpdateDeniedException;
+	public SecuredModel read(final String url, final String lang)
+			throws UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel read( final String url, final String base,
-			final String lang ) throws UpdateDeniedException;
+	public SecuredModel read(final String url, final String base,
+			final String lang) throws UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1374,9 +1695,12 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel register( final ModelChangedListener listener ) throws ReadDeniedException;
+	public SecuredModel register(final ModelChangedListener listener)
+			throws ReadDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1384,10 +1708,13 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Delete on every statement in statments.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel remove( final List<Statement> statements )
-			throws DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel remove(final List<Statement> statements)
+			throws DeleteDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1395,19 +1722,26 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Delete on every statement in baseModel.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel remove( final Model m ) throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel remove(final Model m) throws DeleteDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
-	 * @sec.triple Delete on SecTriple( s, p, o )
+	 * @sec.triple Delete on Triple( s, p, o )
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel remove( final Resource s, final Property p, final RDFNode o ) throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel remove(final Resource s, final Property p,
+			final RDFNode o) throws DeleteDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1415,10 +1749,12 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Delete on statment.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel remove( final Statement s )
-			throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel remove(final Statement s) throws DeleteDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1426,10 +1762,13 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Delete on every statement in statments.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel remove( final Statement[] statements )
-			throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel remove(final Statement[] statements)
+			throws DeleteDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1437,10 +1776,13 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Delete on every statement in iter.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel remove( final StmtIterator iter )
-			throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel remove(final StmtIterator iter)
+			throws DeleteDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
@@ -1448,159 +1790,202 @@ public interface SecuredModel extends Model, SecuredPrefixMapping
 	 * @sec.triple Delete on every statement in the securedModel
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel removeAll() throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel removeAll() throws DeleteDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
-	 * @sec.triple Delete on every statement identified by SecTriple( s,p,o)
+	 * @sec.triple Delete on every statement identified by Triple( s,p,o)
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredModel removeAll( final Resource s, final Property p,
-			final RDFNode r ) throws  DeleteDeniedException, UpdateDeniedException;
+	public SecuredModel removeAll(final Resource s, final Property p,
+			final RDFNode r) throws DeleteDeniedException,
+			UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @sec.triple Delete on every reification statement for each statement in
-	 *            statments.
+	 *             statments.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public void removeAllReifications( final Statement s )
-			throws  DeleteDeniedException, UpdateDeniedException;
+	public void removeAllReifications(final Statement s)
+			throws DeleteDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public SecuredPrefixMapping removeNsPrefix( final String prefix )
-			throws UpdateDeniedException;
+	public SecuredPrefixMapping removeNsPrefix(final String prefix)
+			throws UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @sec.triple Delete on every reification statement fore each statement in
-	 *            rs.
+	 *             rs.
 	 * @throws UpdateDeniedException
 	 * @throws DeleteDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public void removeReification( final ReifiedStatement rs )
-			throws  DeleteDeniedException, UpdateDeniedException;
+	public void removeReification(final ReifiedStatement rs)
+			throws DeleteDeniedException, UpdateDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public String setReaderClassName( final String lang, final String className ) throws UpdateDeniedException;
+	public String setReaderClassName(final String lang, final String className)
+			throws UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Update
 	 * @throws UpdateDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public String setWriterClassName( final String lang, final String className ) throws UpdateDeniedException;
+	public String setWriterClassName(final String lang, final String className)
+			throws UpdateDeniedException, AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public String shortForm( final String uri ) throws ReadDeniedException;
+	public String shortForm(final String uri) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public long size() throws ReadDeniedException;
+	public long size() throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all statements contributed to the union.
 	 * @throws ReadDeniedException
+	 * @throws AuthenticationRequiredException
+	 *             if user is not authenticated and is required to be.
 	 */
 	@Override
-	public Model union( final Model model ) throws ReadDeniedException;
+	public Model union(final Model model) throws ReadDeniedException,
+			AuthenticationRequiredException;
 
 	@Override
-	public SecuredModel unregister( final ModelChangedListener listener );
+	public SecuredModel unregister(final ModelChangedListener listener);
 
 	@Override
-	public SecuredResource wrapAsResource( final Node n );
+	public SecuredResource wrapAsResource(final Node n);
 
 	/**
 	 * 
 	 * @sec.graph Read
 	 * @sec.triple Read on all statements that are written.


<TRUNCATED>