Index: fedd/abac-src/rtml/doc/edu/stanford/rt/credential/RoleDeclaration.html
===================================================================
--- fedd/abac-src/rtml/doc/edu/stanford/rt/credential/RoleDeclaration.html	(revision 8780cbecc6db2bdc2b9ef31eec6e5209ad3bff15)
+++ fedd/abac-src/rtml/doc/edu/stanford/rt/credential/RoleDeclaration.html	(revision 8780cbecc6db2bdc2b9ef31eec6e5209ad3bff15)
@@ -0,0 +1,1284 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN""http://www.w3.org/TR/REC-html40/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc on Wed Oct 02 14:27:57 PDT 2002 -->
+<TITLE>
+RoleDeclaration
+</TITLE>
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+</HEAD>
+<SCRIPT>
+function asd()
+{
+parent.document.title="RoleDeclaration";
+}
+</SCRIPT>
+<BODY BGCOLOR="white" onload="asd();">
+
+<!-- ========== START OF NAVBAR ========== -->
+<A NAME="navbar_top"><!-- --></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
+<TR>
+<TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/RoleDeclaration.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../edu/stanford/rt/credential/Role.html"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="RoleDeclaration.html" TARGET="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;
+<SCRIPT>
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html" TARGET=""><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+<A HREF="../../../../allclasses-noframe.html" TARGET=""><B>All Classes</B></A>
+</NOSCRIPT>
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<!-- =========== END OF NAVBAR =========== -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+edu.stanford.rt.credential</FONT>
+<BR>
+Class  RoleDeclaration</H2>
+<PRE>
+java.lang.Object
+  |
+  +--<B>edu.stanford.rt.credential.RoleDeclaration</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../edu/stanford/rt/util/Constants.html">Constants</A>, java.io.Serializable</DD>
+</DL>
+<HR>
+<DL>
+<DT>public class <B>RoleDeclaration</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../edu/stanford/rt/util/Constants.html">Constants</A>, java.io.Serializable</DL>
+
+<P>
+<DL>
+<DT><B>Author:</B><DD>Ninghui Li, Sandra Qiu<br>
+ 
+  All the information about a declared role.  In RTML, this is 
+  represented by a <code>RoleDeclaration</code> element in a 
+  <code>ApplicationDomainSpecification</code> document.
+ 
+	Issue: Do not support identity yet.</DD>
+</DD>
+<DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html" TARGET="edu.stanford.rt.credential.RoleDeclaration">Serialized Form</A></DL>
+<HR>
+
+<P>
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+
+
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=2><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#baseRole">baseRole</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BaseRole Element for Restriction, Extension, Projection.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#context">context</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Role declaration context.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#declarationType">declarationType</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Declaration type: Restriction, Extension, Projection or Plain.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#DEFAULT_ISSUER_TYPE">DEFAULT_ISSUER_TYPE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default issuer traces type: rule</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#DEFAULT_SUBJECT_TYPE">DEFAULT_SUBJECT_TYPE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Defualt issuer traces type: fact.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#dimension">dimension</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default is 1 <br>
+ In RTML: attribute <code>dimension</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#EXTENSION">EXTENSION</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#isIdentity">isIdentity</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default is false.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#issuerTracesType">issuerTracesType</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default is DEFAULT_ISSUER_TYPE <br>
+  In RTML: attribute <code>issuerTracesType</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#issuerTracesTypes">issuerTracesTypes</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Issuer traces types</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#name">name</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Role name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;<A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#parameterDeclarations">parameterDeclarations</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maps String (parameter name) to DataType (parameter type).</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#PLAIN">PLAIN</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#positionToPrefixes">positionToPrefixes</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#prefixToPositions">prefixToPositions</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This map keeps track of the ordersing of the flattend name-prefixes.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#PROJECTION">PROJECTION</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#RESTRICTION">RESTRICTION</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#subjectTracesType">subjectTracesType</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default is DEFAULT_SUBJECT_TYPE <br>
+  In RTML: attribute <code>subjectTracesType</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.util.HashMap</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#subjectTracesTypes">subjectTracesTypes</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Subject traces types</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="fields_inherited_from_class_edu.stanford.rt.util.Constants"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TD><B>Fields inherited from interface edu.stanford.rt.util.<A HREF="../../../../edu/stanford/rt/util/Constants.html">Constants</A></B></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../edu/stanford/rt/util/Constants.html#COLON">COLON</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#illegal_value_for">illegal_value_for</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#improper_sub_element_for">improper_sub_element_for</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#INDENT">INDENT</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#ISSUER_TRACES_ALL">ISSUER_TRACES_ALL</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#ISSUER_TRACES_DEF">ISSUER_TRACES_DEF</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#ISSUER_TRACES_NONE">ISSUER_TRACES_NONE</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#ISSUER_TRACES_RULE">ISSUER_TRACES_RULE</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#missing_attr_value">missing_attr_value</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#no_support_for">no_support_for</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#SUBJECT_TRACES_ALL">SUBJECT_TRACES_ALL</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#SUBJECT_TRACES_FACT">SUBJECT_TRACES_FACT</A>, <A HREF="../../../../edu/stanford/rt/util/Constants.html#SUBJECT_TRACES_NONE">SUBJECT_TRACES_NONE</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=2><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private </CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#RoleDeclaration(edu.stanford.rt.credential.DomainSpecification, java.lang.String, int, int, int, boolean, int, edu.stanford.rt.credential.RoleDeclaration, edu.stanford.rt.credential.OrderedMap)">RoleDeclaration</A></B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                java.lang.String&nbsp;name,
+                int&nbsp;issuerTracesType,
+                int&nbsp;subjectTracesType,
+                int&nbsp;dimension,
+                boolean&nbsp;isIdentity,
+                int&nbsp;declarationType,
+                <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;parameterDeclarations)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Private contructor ensures that no one else can contruct a RoleDeclaration
+  object and the state of a RoleDeclaration object is complete (unmodifiable)
+  once it is created.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=2><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#calculatePrefixPositions(java.lang.StringBuffer, int, edu.stanford.rt.credential.OrderedMap, java.util.HashMap, java.util.HashMap)">calculatePrefixPositions</A></B>(java.lang.StringBuffer&nbsp;prefix,
+                         int&nbsp;position,
+                         <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;paramDeclarations,
+                         java.util.HashMap&nbsp;prefixToPositionMap,
+                         java.util.HashMap&nbsp;positionToPrefixMap)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method calculatePrefixPositions.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#createExtensionRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, boolean, edu.stanford.rt.credential.RoleDeclaration, edu.stanford.rt.credential.OrderedMap)">createExtensionRole</A></B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                    java.lang.String&nbsp;name,
+                    boolean&nbsp;isIdentity,
+                    <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                    <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;newParameters)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method createExtensionRole.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#createPlainRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, int, int, int, boolean, edu.stanford.rt.credential.OrderedMap)">createPlainRole</A></B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                java.lang.String&nbsp;name,
+                int&nbsp;issuerTracesType,
+                int&nbsp;subjectTracesType,
+                int&nbsp;dimension,
+                boolean&nbsp;isIdentity,
+                <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;newParameters)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method createPlainRole.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#createProjectionRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, boolean, edu.stanford.rt.credential.RoleDeclaration, java.lang.String[])">createProjectionRole</A></B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                     java.lang.String&nbsp;name,
+                     boolean&nbsp;isIdentity,
+                     <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                     java.lang.String[]&nbsp;parameterNames)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method createProjectionRole.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#createRestrictionRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, boolean, edu.stanford.rt.credential.RoleDeclaration, edu.stanford.rt.credential.OrderedMap)">createRestrictionRole</A></B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                      java.lang.String&nbsp;name,
+                      boolean&nbsp;isIdentity,
+                      <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                      <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;newParameters)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method createRestrictionRole.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getBaseRole()">getBaseRole</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the base role object.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getContext()">getContext</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the role declaration context.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getDimension()">getDimension</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value for <code>dimension</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getIssuerTracesType()">getIssuerTracesType</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value for <code>issuerTracesType</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getIssuerTracesTypeString(int)">getIssuerTracesTypeString</A></B>(int&nbsp;issuerTracesType)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getName()">getName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the role name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getParameterDeclarations()">getParameterDeclarations</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getParameterDeclarations.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../edu/stanford/rt/datatype/DataType.html">DataType</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getParameterType(java.lang.String)">getParameterType</A></B>(java.lang.String&nbsp;paramName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getParameterType.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getPosition(java.lang.String)">getPosition</A></B>(java.lang.String&nbsp;prefix)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getPosition.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.Map</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getPositionToPrefixes()">getPositionToPrefixes</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a unmodifiable view of position-to-prefix map.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getPrefix(int)">getPrefix</A></B>(int&nbsp;position)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method getPrefix.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.Map</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getPrefixToPositions()">getPrefixToPositions</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a unmodifiable view of prefix-to-position map.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getSubjectTracesType()">getSubjectTracesType</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value for <code>subjectTracesType</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getSubjectTracesTypeString(int)">getSubjectTracesTypeString</A></B>(int&nbsp;subjectTracesType)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#getTotalPrefixes()">getTotalPrefixes</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the total number of the prefixes in the map.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#isIdentity()">isIdentity</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Checks whether this role is an identity-based role.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html#toString(java.lang.String)">toString</A></B>(java.lang.String&nbsp;indent)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method toString.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TD><B>Methods inherited from class java.lang.Object</B></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=1><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TD>
+</TR>
+</TABLE>
+
+<A NAME="issuerTracesTypes"><!-- --></A><H3>
+issuerTracesTypes</H3>
+<PRE>
+public static java.util.HashMap <B>issuerTracesTypes</B></PRE>
+<DL>
+<DD>Issuer traces types
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="subjectTracesTypes"><!-- --></A><H3>
+subjectTracesTypes</H3>
+<PRE>
+public static java.util.HashMap <B>subjectTracesTypes</B></PRE>
+<DL>
+<DD>Subject traces types
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="DEFAULT_ISSUER_TYPE"><!-- --></A><H3>
+DEFAULT_ISSUER_TYPE</H3>
+<PRE>
+public static int <B>DEFAULT_ISSUER_TYPE</B></PRE>
+<DL>
+<DD>Default issuer traces type: rule
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="DEFAULT_SUBJECT_TYPE"><!-- --></A><H3>
+DEFAULT_SUBJECT_TYPE</H3>
+<PRE>
+public static int <B>DEFAULT_SUBJECT_TYPE</B></PRE>
+<DL>
+<DD>Defualt issuer traces type: fact.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="context"><!-- --></A><H3>
+context</H3>
+<PRE>
+private <A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A> <B>context</B></PRE>
+<DL>
+<DD>Role declaration context. 
+ <br>
+ The <code>DomainSpecification</code> in which the current role
+ is declared.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="name"><!-- --></A><H3>
+name</H3>
+<PRE>
+private java.lang.String <B>name</B></PRE>
+<DL>
+<DD>Role name. <br>
+ In RTML: attribute <code>name</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="issuerTracesType"><!-- --></A><H3>
+issuerTracesType</H3>
+<PRE>
+private int <B>issuerTracesType</B></PRE>
+<DL>
+<DD>Default is DEFAULT_ISSUER_TYPE <br>
+  In RTML: attribute <code>issuerTracesType</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="subjectTracesType"><!-- --></A><H3>
+subjectTracesType</H3>
+<PRE>
+private int <B>subjectTracesType</B></PRE>
+<DL>
+<DD>Default is DEFAULT_SUBJECT_TYPE <br>
+  In RTML: attribute <code>subjectTracesType</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="dimension"><!-- --></A><H3>
+dimension</H3>
+<PRE>
+private int <B>dimension</B></PRE>
+<DL>
+<DD>Default is 1 <br>
+ In RTML: attribute <code>dimension</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="isIdentity"><!-- --></A><H3>
+isIdentity</H3>
+<PRE>
+private boolean <B>isIdentity</B></PRE>
+<DL>
+<DD>Default is false. <br>
+ In RTML: attribute <code>isIdentity</code>.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="parameterDeclarations"><!-- --></A><H3>
+parameterDeclarations</H3>
+<PRE>
+private <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A> <B>parameterDeclarations</B></PRE>
+<DL>
+<DD>Maps String (parameter name) to DataType (parameter type).
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="declarationType"><!-- --></A><H3>
+declarationType</H3>
+<PRE>
+private int <B>declarationType</B></PRE>
+<DL>
+<DD>Declaration type: Restriction, Extension, Projection or Plain.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="baseRole"><!-- --></A><H3>
+baseRole</H3>
+<PRE>
+private <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A> <B>baseRole</B></PRE>
+<DL>
+<DD>BaseRole Element for Restriction, Extension, Projection.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="prefixToPositions"><!-- --></A><H3>
+prefixToPositions</H3>
+<PRE>
+private java.util.HashMap <B>prefixToPositions</B></PRE>
+<DL>
+<DD>This map keeps track of the ordersing of the flattend name-prefixes.
+          A name-prefix is colon-separated name concatenation.
+<P>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="positionToPrefixes"><!-- --></A><H3>
+positionToPrefixes</H3>
+<PRE>
+private java.util.HashMap <B>positionToPrefixes</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="RESTRICTION"><!-- --></A><H3>
+RESTRICTION</H3>
+<PRE>
+private static final int <B>RESTRICTION</B></PRE>
+<DL>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#edu.stanford.rt.credential.RoleDeclaration.RESTRICTION">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="EXTENSION"><!-- --></A><H3>
+EXTENSION</H3>
+<PRE>
+private static final int <B>EXTENSION</B></PRE>
+<DL>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#edu.stanford.rt.credential.RoleDeclaration.EXTENSION">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROJECTION"><!-- --></A><H3>
+PROJECTION</H3>
+<PRE>
+private static final int <B>PROJECTION</B></PRE>
+<DL>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#edu.stanford.rt.credential.RoleDeclaration.PROJECTION">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PLAIN"><!-- --></A><H3>
+PLAIN</H3>
+<PRE>
+private static final int <B>PLAIN</B></PRE>
+<DL>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#edu.stanford.rt.credential.RoleDeclaration.PLAIN">Constant Field Values</A></DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=1><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TD>
+</TR>
+</TABLE>
+
+<A NAME="RoleDeclaration(edu.stanford.rt.credential.DomainSpecification, java.lang.String, int, int, int, boolean, int, edu.stanford.rt.credential.RoleDeclaration, edu.stanford.rt.credential.OrderedMap)"><!-- --></A><H3>
+RoleDeclaration</H3>
+<PRE>
+private <B>RoleDeclaration</B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                        java.lang.String&nbsp;name,
+                        int&nbsp;issuerTracesType,
+                        int&nbsp;subjectTracesType,
+                        int&nbsp;dimension,
+                        boolean&nbsp;isIdentity,
+                        int&nbsp;declarationType,
+                        <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                        <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;parameterDeclarations)
+                 throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Private contructor ensures that no one else can contruct a RoleDeclaration
+  object and the state of a RoleDeclaration object is complete (unmodifiable)
+  once it is created. <br>
+ 	And the newly created RoleDeclaration's parameter-postion mapping is also
+ 	calculated.
+<P>
+<DT><B>Parameters:</B><DD><CODE>context</CODE> - <DD><CODE>name</CODE> - <DD><CODE>issuerTracesType</CODE> - <DD><CODE>subjectTracesType</CODE> - <DD><CODE>dimension</CODE> - <DD><CODE>isIdentity</CODE> - <DD><CODE>declarationType</CODE> - <DD><CODE>baseRole</CODE> - <DD><CODE>parameterDeclarations</CODE> - 
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TD COLSPAN=1><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TD>
+</TR>
+</TABLE>
+
+<A NAME="createRestrictionRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, boolean, edu.stanford.rt.credential.RoleDeclaration, edu.stanford.rt.credential.OrderedMap)"><!-- --></A><H3>
+createRestrictionRole</H3>
+<PRE>
+public static <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A> <B>createRestrictionRole</B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                                                    java.lang.String&nbsp;name,
+                                                    boolean&nbsp;isIdentity,
+                                                    <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                                                    <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;newParameters)
+                                             throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method createRestrictionRole.
+ 		Public interface to construct a <code>Restriction</code> type 
+ 		<code>RoleDeclaration</code> object.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>name</CODE> - <DD><CODE>isIdentity</CODE> - <DD><CODE>baseRole</CODE> - <DD><CODE>newParameters</CODE> - 
+<DT><B>Returns:</B><DD>RoleDeclaration
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createExtensionRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, boolean, edu.stanford.rt.credential.RoleDeclaration, edu.stanford.rt.credential.OrderedMap)"><!-- --></A><H3>
+createExtensionRole</H3>
+<PRE>
+public static <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A> <B>createExtensionRole</B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                                                  java.lang.String&nbsp;name,
+                                                  boolean&nbsp;isIdentity,
+                                                  <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                                                  <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;newParameters)
+                                           throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method createExtensionRole.
+ 		Public interface to construct an <code>Extension</code> type 
+ 		<code>RoleDeclaration</code> object.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>name</CODE> - <DD><CODE>isIdentity</CODE> - <DD><CODE>baseRole</CODE> - <DD><CODE>newParameters</CODE> - 
+<DT><B>Returns:</B><DD>RoleDeclaration
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createProjectionRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, boolean, edu.stanford.rt.credential.RoleDeclaration, java.lang.String[])"><!-- --></A><H3>
+createProjectionRole</H3>
+<PRE>
+public static <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A> <B>createProjectionRole</B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                                                   java.lang.String&nbsp;name,
+                                                   boolean&nbsp;isIdentity,
+                                                   <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A>&nbsp;baseRole,
+                                                   java.lang.String[]&nbsp;parameterNames)
+                                            throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method createProjectionRole.
+ 		Public interface to construct a <code>Projection</code> type 
+ 		<code>RoleDeclaration</code> object.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>name</CODE> - <DD><CODE>isIdentity</CODE> - <DD><CODE>baseRole</CODE> - <DD><CODE>parameterNames</CODE> - 
+<DT><B>Returns:</B><DD>RoleDeclaration
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createPlainRole(edu.stanford.rt.credential.DomainSpecification, java.lang.String, int, int, int, boolean, edu.stanford.rt.credential.OrderedMap)"><!-- --></A><H3>
+createPlainRole</H3>
+<PRE>
+public static <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A> <B>createPlainRole</B>(<A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A>&nbsp;context,
+                                              java.lang.String&nbsp;name,
+                                              int&nbsp;issuerTracesType,
+                                              int&nbsp;subjectTracesType,
+                                              int&nbsp;dimension,
+                                              boolean&nbsp;isIdentity,
+                                              <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;newParameters)
+                                       throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method createPlainRole.
+ Public interface to construct a <code>Plain</code> type of 
+ <code>RoleDeclaration</code> object. <code>Identity</code> is not supported.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>name</CODE> - <DD><CODE>issuerTracesType</CODE> - <DD><CODE>subjectTracesType</CODE> - <DD><CODE>dimension</CODE> - <DD><CODE>isIdentity</CODE> - <DD><CODE>newParameters</CODE> - 
+<DT><B>Returns:</B><DD>RoleDeclaration
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getContext()"><!-- --></A><H3>
+getContext</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/credential/DomainSpecification.html">DomainSpecification</A> <B>getContext</B>()</PRE>
+<DL>
+<DD>Returns the role declaration context.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getName()"><!-- --></A><H3>
+getName</H3>
+<PRE>
+public java.lang.String <B>getName</B>()</PRE>
+<DL>
+<DD>Returns the role name.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getIssuerTracesType()"><!-- --></A><H3>
+getIssuerTracesType</H3>
+<PRE>
+public int <B>getIssuerTracesType</B>()</PRE>
+<DL>
+<DD>Returns the value for <code>issuerTracesType</code>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSubjectTracesType()"><!-- --></A><H3>
+getSubjectTracesType</H3>
+<PRE>
+public int <B>getSubjectTracesType</B>()</PRE>
+<DL>
+<DD>Returns the value for <code>subjectTracesType</code>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDimension()"><!-- --></A><H3>
+getDimension</H3>
+<PRE>
+public int <B>getDimension</B>()</PRE>
+<DL>
+<DD>Returns the value for <code>dimension</code>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBaseRole()"><!-- --></A><H3>
+getBaseRole</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/credential/RoleDeclaration.html">RoleDeclaration</A> <B>getBaseRole</B>()</PRE>
+<DL>
+<DD>Returns the base role object.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isIdentity()"><!-- --></A><H3>
+isIdentity</H3>
+<PRE>
+public boolean <B>isIdentity</B>()</PRE>
+<DL>
+<DD>Checks whether this role is an identity-based role.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getParameterDeclarations()"><!-- --></A><H3>
+getParameterDeclarations</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A> <B>getParameterDeclarations</B>()
+                                    throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method getParameterDeclarations.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>OrderedMap
+	 	Returns an OrderedMap of parameter declarations in 
+  this role declaration object. <br>
+  For Restriction or Extension type <code>RoleDeclaration</code>, 
+  the map contains parameters declared both in base role and this role.
+  For Projection type <code>RoleDeclaration</code>, 
+  the map contains only those paraeters declared in base role with 
+  matching names with this role's declared parameters.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getParameterType(java.lang.String)"><!-- --></A><H3>
+getParameterType</H3>
+<PRE>
+public <A HREF="../../../../edu/stanford/rt/datatype/DataType.html">DataType</A> <B>getParameterType</B>(java.lang.String&nbsp;paramName)
+                          throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method getParameterType.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>paramName</CODE> - name of the declared parameter.
+<DT><B>Returns:</B><DD>DataType type of the declared parameter.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getPrefixToPositions()"><!-- --></A><H3>
+getPrefixToPositions</H3>
+<PRE>
+public java.util.Map <B>getPrefixToPositions</B>()</PRE>
+<DL>
+<DD>Returns a unmodifiable view of prefix-to-position map.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getPositionToPrefixes()"><!-- --></A><H3>
+getPositionToPrefixes</H3>
+<PRE>
+public java.util.Map <B>getPositionToPrefixes</B>()</PRE>
+<DL>
+<DD>Returns a unmodifiable view of position-to-prefix map.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getTotalPrefixes()"><!-- --></A><H3>
+getTotalPrefixes</H3>
+<PRE>
+public int <B>getTotalPrefixes</B>()</PRE>
+<DL>
+<DD>Returns the total number of the prefixes in the map.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getPosition(java.lang.String)"><!-- --></A><H3>
+getPosition</H3>
+<PRE>
+public int <B>getPosition</B>(java.lang.String&nbsp;prefix)</PRE>
+<DL>
+<DD>Method getPosition.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - the prefix to get the position with.
+<DT><B>Returns:</B><DD>int
+ 		the postition of the given prefix.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getPrefix(int)"><!-- --></A><H3>
+getPrefix</H3>
+<PRE>
+public java.lang.String <B>getPrefix</B>(int&nbsp;position)</PRE>
+<DL>
+<DD>Method getPrefix.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>position</CODE> - the position to get prefix with.
+<DT><B>Returns:</B><DD>String
+ 		the prefix at the given position.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toString(java.lang.String)"><!-- --></A><H3>
+toString</H3>
+<PRE>
+public java.lang.String <B>toString</B>(java.lang.String&nbsp;indent)</PRE>
+<DL>
+<DD>Method toString.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>indent</CODE> - 
+<DT><B>Returns:</B><DD>String</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="calculatePrefixPositions(java.lang.StringBuffer, int, edu.stanford.rt.credential.OrderedMap, java.util.HashMap, java.util.HashMap)"><!-- --></A><H3>
+calculatePrefixPositions</H3>
+<PRE>
+private void <B>calculatePrefixPositions</B>(java.lang.StringBuffer&nbsp;prefix,
+                                      int&nbsp;position,
+                                      <A HREF="../../../../edu/stanford/rt/credential/OrderedMap.html">OrderedMap</A>&nbsp;paramDeclarations,
+                                      java.util.HashMap&nbsp;prefixToPositionMap,
+                                      java.util.HashMap&nbsp;positionToPrefixMap)
+                               throws <A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></PRE>
+<DL>
+<DD>Method calculatePrefixPositions.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - current prefix. Prefix is a lolon-saparated string, which 
+      is the concatenation of role name and parameter names.<DD><CODE>position</CODE> - the current position of the prefix.<DD><CODE>paramDeclarations</CODE> - all parameters declared in this role.<DD><CODE>prefixToPositionMap</CODE> - a HashMap which maps a prefix to its position.<DD><CODE>positionToPrefixMap</CODE> - a HashMap which maps a position to its prefix
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../../../edu/stanford/rt/credential/DomainSpecException.html">DomainSpecException</A></CODE></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getIssuerTracesTypeString(int)"><!-- --></A><H3>
+getIssuerTracesTypeString</H3>
+<PRE>
+private java.lang.String <B>getIssuerTracesTypeString</B>(int&nbsp;issuerTracesType)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSubjectTracesTypeString(int)"><!-- --></A><H3>
+getSubjectTracesTypeString</H3>
+<PRE>
+private java.lang.String <B>getSubjectTracesTypeString</B>(int&nbsp;subjectTracesType)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+<!-- ========== START OF NAVBAR ========== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
+<TR>
+<TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/RoleDeclaration.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../edu/stanford/rt/credential/Role.html"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../edu/stanford/rt/credential/RoleDefinition.html"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="RoleDeclaration.html" TARGET="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;
+<SCRIPT>
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html" TARGET=""><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+<A HREF="../../../../allclasses-noframe.html" TARGET=""><B>All Classes</B></A>
+</NOSCRIPT>
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<!-- =========== END OF NAVBAR =========== -->
+
+<HR>
+
+</BODY>
+</HTML>
