directory-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r843812 - in /websites/staging/directory/trunk/content: ./ apacheds/advanced-ug/
Date Tue, 25 Dec 2012 19:40:08 GMT
Author: buildbot
Date: Tue Dec 25 19:40:07 2012
New Revision: 843812

Log:
Staging update by buildbot for directory

Modified:
    websites/staging/directory/trunk/content/   (props changed)
    websites/staging/directory/trunk/content/apacheds/advanced-ug/1.1-architecture-overview.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/1.2-network.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/1.3-directory-service.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/1.5-backend.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/2-server-config.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/3-admin-model.html
    websites/staging/directory/trunk/content/apacheds/advanced-ug/3.1-administrative-points.html

Propchange: websites/staging/directory/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Dec 25 19:40:07 2012
@@ -1 +1 @@
-1425763
+1425764

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/1.1-architecture-overview.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/1.1-architecture-overview.html
(original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/1.1-architecture-overview.html
Tue Dec 25 19:40:07 2012
@@ -129,11 +129,13 @@
 <h1 id="11-architecture-overview">1.1 - Architecture Overview</h1>
 <p>The Apache Directory Server (aka <em>ApacheDS</em>) architecture has
many different layers. The following schema expose the most important ones :</p>
 <p><img alt="ApacheDS architecture" src="images/architecture.png" /></p>
-<p>As we can see, we distinguish four different layers :
-<em> The network
-</em> The Session
-<em> The PartitionNexus
-</em> The Backends</p>
+<p>As we can see, we distinguish four different layers :</p>
+<ul>
+<li>the network</li>
+<li>the Session</li>
+<li>the PartitionNexus</li>
+<li>the Backends</li>
+</ul>
 <p>We will describe in detail those layers in the following chapters.</p>
 
 

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/1.2-network.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/1.2-network.html (original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/1.2-network.html Tue Dec
25 19:40:07 2012
@@ -128,16 +128,19 @@
 
 <h1 id="12-network-layer">1.2 - Network Layer</h1>
 <p>This layer is the part the user connects to when he wants to obtain some data from
the server. This is not a mandatory part ot the server : we don't need to use it when the
server is embedded.</p>
-<p>We offer more than just LDAP protocol, the server also include various protocols
:
-<em> Kerberos
-</em> NTP
-<em> DHCP
-</em> DNS
-* ChangePassword</p>
-<p>Not all of them are implemented in the current version, but at least the Kerberos
server is available. (The other protocols have been developped as a proof of concept : as
they are all dpeending on a storage database, we have used the LDAP server as a storage).</p>
+<p>We offer more than just LDAP protocol, the server also include various protocols
:</p>
+<ul>
+<li>Kerberos</li>
+<li>NTP</li>
+<li>DHCP</li>
+<li>DNS</li>
+<li>ChangePassword</li>
+</ul>
+<p>Not all of them are implemented in the current version, but at least the Kerberos
server is available. The other protocols have been developped as a proof of concept : as they
are all depending upon a storage database, we have used the LDAP server as a storage.</p>
 <p>It's perfectly possible to imagine more protocols being implemented in the near
future...</p>
 <h2 id="server-startup">Server startup</h2>
-<p>This chapter title is a bit misleading. We don't start a server, we start a <em>DirectoryService</em>,
then we start various servers on top of it. The <em>DirectoryService</em> is the
part responsible for the management f data (retrieval, storage, etc). All the servers can
access this storage if needed.</p>
+<p>This chapter title is a bit misleading. We don't start a server, we start a <em>DirectoryService</em>,
then we start various servers on top of it.
+The <em>DirectoryService</em> is the part responsible for the management of data
(retrieval, storage, etc). All the servers can access this storage if needed.</p>
 <p>So when the <em>DirectoryService</em> has been started and is operational,
we can start the various servers, which will accept incoming requests from remote peers.</p>
 <h3 id="transports">Transports</h3>
 <p>We allow connection through the definition of <em>transports</em>. A
<em>Transport</em> is a <strong>TCP</strong> or an <strong>UDP</strong>
socket capable of absorbing a request and to send a response. Depending on the type of server,
we may declare one or more <strong>TCP</strong> <em>Transports</em>,
or a <strong>TCP</strong> and a <strong>UDP</strong> <em>Transports</em>,
or an <strong>UDP</strong> <em>Transport</em> only.</p>

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/1.3-directory-service.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/1.3-directory-service.html
(original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/1.3-directory-service.html
Tue Dec 25 19:40:07 2012
@@ -129,9 +129,9 @@
 <h1 id="13-directoryservice">1.3 - DirectoryService</h1>
 <p>The <em>DirectoryService</em> is the core of the server. This is where
we process incoming requests and ask the backend for data. </p>
 <p>It has an entry point, the <em>OperationManager</em>, which is in charge
of pushing the requests into the <em>Interceptors</em> chain, and to protect the
server against concurrent modifications.</p>
-<p>Then the request is going through every <em>Interceptor</em> being registred
for this operation. When we have gone through all the <em>Interceptors</em>, we
have reach the <em>PartitionNexus</em>, which is the connection with the backends.</p>
-<p>We now just have to determinate which type of <em>Backend</em> we should
address, and this is done using the <em>Dn</em>.The request is then transmitted
to the <em>Backend</em>, which returns the result.</p>
-<p>The result bubble up through the <em>Interceptors</em> as we unfold
the stack stack, up the the <em>OperationManager</em> and the caller.</p>
+<p>Then the request is going through every <em>Interceptor</em> being registred
for this operation. When we have gone through all the <em>Interceptors</em>, we
have reached the <em>PartitionNexus</em>, which is the connection with the backends.</p>
+<p>We now just have to determinate which type of <em>Backend</em> we should
address, and this is done using the <em>Dn</em>. The request is then transmitted
to the <em>Backend</em>, which returns the result.</p>
+<p>The result bubbles up through the <em>Interceptors</em> as we unfold
the stack stack, up to the <em>OperationManager</em> and to the caller.</p>
 <h2 id="environment">Environment</h2>
 <p>The <em>DirectoryService</em> knows about its execution environment
: it has a <em>schemaManager</em> instance, it knows about the <em>Interceptors</em>
chain, it stores a map of all the pending requests (it's necessary as one may abandon some
request), it holds the existing <em>Sessions</em>.</p>
 <p>In other word, the <em>DirectoryService</em> is not only the part of
teh server executing the logic, it also holds the current state of every clients.</p>

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html (original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html Tue
Dec 25 19:40:07 2012
@@ -131,7 +131,7 @@
 <p>Some <em>Interceptors</em> can be disabled, some other can be enabled.
It's also possible to add some new one.</p>
 <p>All in all, they will handle operations from a specific functional aspect.</p>
 <h2 id="handled-operations">Handled operations</h2>
-<p>Each <em>Interceptor</em> handle a subset of the possible operations,
among those listed in the following table :</p>
+<p>Each <em>Interceptor</em> handles a subset of the possible operations,
among those listed in the following table :</p>
 <table>
 <thead>
 <tr>
@@ -142,23 +142,23 @@
 <tbody>
 <tr>
 <td>Add</td>
-<td>Add an entry in the backend</td>
+<td>Adds an entry in the backend</td>
 </tr>
 <tr>
 <td>Bind</td>
-<td>Bind on the DirectoryService</td>
+<td>Binds on the DirectoryService</td>
 </tr>
 <tr>
 <td>Compare</td>
-<td>Compare the elements with the associated entry in the backend</td>
+<td>Compares the elements with the associated entry in the backend</td>
 </tr>
 <tr>
 <td>Delete</td>
-<td>Delete the entry</td>
+<td>Deletes the entry</td>
 </tr>
 <tr>
 <td>getRooDSE</td>
-<td>Get back the RootDSE entry</td>
+<td>Gets back the RootDSE entry</td>
 </tr>
 <tr>
 <td>hasEntry</td>
@@ -166,37 +166,38 @@
 </tr>
 <tr>
 <td>Lookup</td>
-<td>Fetch an entry</td>
+<td>Fetches an entry</td>
 </tr>
 <tr>
 <td>Modify</td>
-<td>Modify an entry</td>
+<td>Modifies an entry</td>
 </tr>
 <tr>
 <td>Move</td>
-<td>Move an entry</td>
+<td>Moves an entry</td>
 </tr>
 <tr>
 <td>MoveAndRename</td>
-<td>Move and rename an entry</td>
+<td>Moves and renames an entry</td>
 </tr>
 <tr>
 <td>Rename</td>
-<td>Rename an entry</td>
+<td>Renames an entry</td>
 </tr>
 <tr>
 <td>Search</td>
-<td>Search for entries</td>
+<td>Searches for entries</td>
 </tr>
 <tr>
 <td>Unbind</td>
-<td>Unbind from the DirectoryService</td>
+<td>Unbinds from the DirectoryService</td>
 </tr>
 </tbody>
 </table>
-<p>It is important to understand that each operation wil go through each <em>Interceptor</em>
that are declared to handle the operation, down to the backend.</p>
+<p>It is important to understand that each operation will go through each <em>Interceptor</em>
declared to handle the operation, down to the backend.</p>
 <h2 id="existing-interceptors">Existing interceptors</h2>
-<p>The following interceptors are already present in the server, even if they are not
enabled. In this table, we list all the operation each interceptor is handling, and if the
<em>interceptor</em> is enabled by default or not :</p>
+<p>The following interceptors are already present in the server, even if they are not
enabled.
+In this table, we list all the operations each interceptor is handling, and if the <em>interceptor</em>
is enabled by default or not :</p>
 <table>
 <thead>
 <tr>
@@ -527,7 +528,7 @@
 </tbody>
 </table>
 <h2 id="interceptors-order">Interceptors order</h2>
-<p>As we already said, the <em>Intecreptors</em> order is significant :
why would we proceed an <em>Add</em> operation through all the <em>Interceptors</em>
if the user is simply denied the right to add an entry by the <em>AciAuthorizationInterceptor</em>
?</p>
+<p>As we already said, the <em>Interceptors</em> order is significant :
why would we proceed an <em>Add</em> operation through all the <em>Interceptors</em>
if the user is simply denied the right to add an entry by the <em>AciAuthorizationInterceptor</em>
?</p>
 <p>Currently, the following order is enforced :</p>
 <table>
 <thead>
@@ -596,7 +597,7 @@
 </tbody>
 </table>
 <h2 id="example">Example</h2>
-<p>Let's consider the <em>search</em> operation. It will be processed successuvly
by the following <em>Intecreptors</em>, as it can be deduced by the two previous
tables :</p>
+<p>Let's consider the <em>search</em> operation. It will be processed successively
by the following <em>Interceptors</em>, as it can be deduced by the two previous
tables :</p>
 <ul>
 <li>NormalizationInterceptor</li>
 <li>AuthenticationInterceptor</li>
@@ -608,10 +609,10 @@
 </ul>
 <p>We can do the same exercise for each operation.</p>
 <h2 id="processing">Processing</h2>
-<p>Basically, an <em>Interceptor</em> receives a request for an operation,
do some pre-processing, call the next <em>Interceptor</em> in the chain, do some
post-processing, and return a result. </p>
+<p>Basically, an <em>Interceptor</em> receives a request for an operation,
does some pre-processing, calls the next <em>Interceptor</em> in the chain, does
some post-processing, and returns a result.</p>
 <p>Calling the next <em>Interceptor</em> is as simple as calling the <em>next(OperationContext)</em>
method, which will compute the right <em>Interceptor</em>.</p>
 <p>The pre-processing and post-processing are standard Java code, there is nothing
special there. </p>
-<p>Each operation is passed into an instance of a specific <em>OperationContext</em>,
which contains all what is needed about the operation and the environement.</p>
+<p>Each operation is passed into an instance of a specific <em>OperationContext</em>,
which contains all what is needed about the operation and the environment.</p>
 
 
     <div class="nav">

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/1.5-backend.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/1.5-backend.html (original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/1.5-backend.html Tue Dec
25 19:40:07 2012
@@ -129,17 +129,19 @@
 <h1 id="15-backend">1.5 - Backend</h1>
 <p>The <em>Backend</em> is the part of the server responsible for storing
data in a way we can easily retrieve them. This storage does not necessarily have to be remanent
: we can have a in-memory <em>backend</em>.</p>
 <h2 id="existing-backends">Existing Backends</h2>
-<p>We currently have 3 different backends :
-<em> JDBM
-</em> LDIF
-* In-Memory</p>
+<p>We currently have 3 different backends :</p>
+<ul>
+<li>JDBM</li>
+<li>LDIF</li>
+<li>In-Memory</li>
+</ul>
 <h3 id="jdbm-backend">JDBM Backend</h3>
 <p>The <strong>JDBM</strong> backend is storing data on disk, using <strong>BTrees</strong>.
It's fast when it comes to retrieve data, slow when you have to add them.</p>
 <h3 id="in-memory-backend">In-Memory Backend</h3>
 <p>This Backend loads in memory a full set of entries. ALl of them must be hold by
the existig memory, we don't write on disk anything nor we read anything from disk. If the
server is stopped, everything is lost.</p>
 <h3 id="ldif-backend">LDIF Backend</h3>
-<p>It come sin two forms : one single file, or many fles (one per entry). It's always
backed by a in-memory <em>Backend</em>, otherwise it would not be possible to
retrieve the entries. </p>
-<p>As we depend on a in-memory backend, which handles the indexes, we have to create
those index when this <em>Backend</em> is read, which can be a costly operation.
</p>
+<p>It comes in two forms : one single file, or many fles (one per entry). It's always
backed by a in-memory <em>Backend</em>, otherwise it would not be possible to
retrieve the entries. </p>
+<p>As we depend on a in-memory backend, which handles the indexes, we have to create
those indexes when this <em>Backend</em> is read, which can be a costly operation.
</p>
 <h3 id="future-backends">Future Backends</h3>
 <p>We intend to add another in-memory backend, based on <em>Mavibot</em>,
a <strong>MVCC BTREE</strong>. The biggest advantage over the other systems is
that it's fast, it allows concurrent reads without locks when the other <em>Backend</em>
block the reads when some write operation is being processed. Also it saves on disk it contents
peridodically, and has a Journal so that we can recover fro a crash.</p>
 <p>The only drawback is that all the entries and indexes must hold in memory. On the
other hand, we don't anymore need a cache.</p>
@@ -147,7 +149,7 @@
 <p>Basically, each <em>Backend</em> instance inherit from the <em>AbstractBTreePartition</em>
class. We can see that a <em>Backend</em> <strong>must</strong> be
a <strong>Btree</strong>.</p>
 <p>Data are stored into various tables. In fact, we have one table containing all the
entries - the <strong>MasterTable</strong> - and many indexes. </p>
 <h3 id="mastertable">MasterTable</h3>
-<p>The <em>MasterTable</em> coantins all the entries, serialized. </p>
+<p>The <em>MasterTable</em> contains all the entries, serialized. </p>
 <p>This table is a <Key, Value> <strong>BTree</strong>, where the
key is the entry's <strong>UUID</strong>, and the value the serialized entry.</p>
 <p><DIV class="note" markdown="1">
 Theorically, we could be able to read it, and restore the whole database, indexes included,
assuming that we know which index we have to create. Sadly, it's not enough, as the entries
are stored without any information about their position in the <strong>DIT</strong>.
@@ -167,9 +169,9 @@ Theorically, we could be able to read it
 <li>OneAlias : An index used for children aliases </li>
 <li>SubAlias : An index used of descendant aliases</li>
 </ul>
-<p>The user may define many different index, dependening on his needs.</p>
+<p>The user may define many different indexes, depending on his or her needs.</p>
 <h3 id="the-parentidandrdn-index">The ParentIdAndRdn index</h3>
-<p>This index is special, as it's used to associate an entry to a position in the <strong>DIT</strong>.
Assuming that each entry has a <em>Dn</em>, and that this <em>Dn</em>
describes a hierarchie, the <em>ParentIdAndRdn</em> index depicts this hierarchy.</p>
+<p>This index is special, as it's used to associate an entry to a position in the <strong>DIT</strong>.
Assuming that each entry has a <em>Dn</em>, and that this <em>Dn</em>
describes a hierarchy, the <em>ParentIdAndRdn</em> index depicts this hierarchy.</p>
 <p>The <em>ParentId</em> part refers to the <em>UUID</em> of
the parent for the current entry. The <em>Rdn</em> part is the entry <em>Rdn</em>.
In order to rebuild the full <em>Dn</em> for a given entry, we must get all the
<em>ParentIdAndRdn</em> up to the root to grab all the needed <em>Rdn</em>.</p>
 <p>This index is also used to process one level and sub level indexes.</p>
 

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/2-server-config.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/2-server-config.html (original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/2-server-config.html Tue
Dec 25 19:40:07 2012
@@ -422,7 +422,7 @@
 <td>ads-dsMaxPDUSize</td>
 <td><em>int</em></td>
 <td>2048</td>
-<td>The maximum size of an incomming PDU (not used)</td>
+<td>The maximum size of an incoming PDU (not used)</td>
 </tr>
 <tr>
 <td>dsPasswordHidden</td>
@@ -436,7 +436,7 @@
 <td>ads-dsSyncPeriodMillis</td>
 <td><em>long</em></td>
 <td>15000</td>
-<td>The delai in milliseconds before we flush data on disk</td>
+<td>The delay in milliseconds before we flush data on disk</td>
 </tr>
 <tr>
 <td>dsTestEntries</td>
@@ -457,7 +457,7 @@
 <td></td>
 <td><em>JournalBean</em></td>
 <td>N/A</td>
-<td>The interceptor that record every modifcation</td>
+<td>The interceptor that records every modification</td>
 </tr>
 <tr>
 <td>servers</td>
@@ -612,14 +612,14 @@
 <td>ads-maxSizeLimit</td>
 <td><em>int</em></td>
 <td>1000</td>
-<td>The maximum number of entries teh server will return</td>
+<td>The maximum number of entries the server will return</td>
 </tr>
 <tr>
 <td>maxTimeLimit</td>
 <td>ads-maxTimeLimit</td>
 <td><em>int</em></td>
 <td>1000</td>
-<td>The maimum bumber of second the server will use to process a search request</td>
+<td>The maimum number of seconds the server will use to process a search request</td>
 </tr>
 <tr>
 <td>saslHost</td>

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/3-admin-model.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/3-admin-model.html (original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/3-admin-model.html Tue Dec
25 19:40:07 2012
@@ -127,28 +127,32 @@
 
 
 <h1 id="3-administrative-model">3 - Administrative Model</h1>
-<p>The <strong>Administrative Model</strong> is a really critical notion
that need to be understood, because it drives many of ApacheDS roles.</p>
+<p>The <strong>Administrative Model</strong> is a really critical notion
that needs to be understood, because it drives many of ApacheDS roles.</p>
 <p>It's directly inherited by the <strong>X.500</strong> Administrative
model (in fact, we do implement the full <strong>X.500</strong> sepcification
related to <strong>AAs</strong>).</p>
 <h2 id="what-is-the-administrative-model">What is the Administrative Model ?</h2>
-<p>The idea is to define the <strong>DIT</strong> as some areas which are
administrated. Each area can be defined, and covers a set of entries, and each area can manage
one ore more roles we want to manage. Those roles can be related to authorization, schema,
etc... Each of this areas can overlap, but in any case, if two areas are overlaping, then
one area totally include the other one. </p>
-<p>The Admnistrative Model is everything we need to implement in order to be able to
manage roles on some defined areas.</p>
+<p>The idea is to define the <strong>DIT</strong> as some areas which are
administrated.
+Each area can be defined, and covers a set of entries, and each area can manage one ore more
roles we want to manage.
+Those roles can be related to authorization, schema, etc... Each of these areas can overlap,
but in any case, if two areas are overlapping,
+then one area totally includes the other one.</p>
+<p>The Administrative Model is everything we need to implement in order to be able
to manage roles on some defined areas.</p>
 <h2 id="areas">Areas</h2>
-<p>An Area describe a part of the <strong>DIT</strong> which will start
from a specific entry, and span across a part of the subtree starting at the base entry. An
area is administrated by an <strong>AP</strong> (Administrative Point) which holds
all the needed information about the area and the roles.</p>
+<p>An Area describes a part of the <strong>DIT</strong> which will start
from a specific entry, and span across a part of the subtree starting at the base entry. An
area is administrated by an <strong>AP</strong> (Administrative Point) which holds
all the needed information about the area and the roles.</p>
 <p>We have three kind of areas :</p>
 <ul>
 <li>AAA : Autonomous Administrative Areas</li>
 <li>SAA : Specific Administrative Areas</li>
 <li>IAA : Inner Administrative Areas</li>
 </ul>
-<p><strong>AAAs</strong> cover all the roles as if we have declared one
<strong>SAA</strong> for each existing role. They overload any area in which they
can be encapsulated, hiding them.</p>
+<p><strong>AAAs</strong> cover all the roles as if we had declared one
<strong>SAA</strong> for each existing role. They overload any area in which they
can be encapsulated, hiding them.</p>
 <p><strong>SAAs</strong> cover one specific role, and overload any encapsulating
area with the same role.</p>
 <p><strong>IAAs</strong> cover one specific role, but don't not overload
any encapsulating area with the same role.</p>
 <h2 id="administration-point">Administration Point</h2>
 <p>An <strong>Administration Point</strong> is the point in the <strong>DIT</strong>
where an area starts. It defines the roles, and the scope that applies to this area.</p>
-<p>Once we know which area we need to define, and the associated roles, it's mandatory
to store those information in the <strong>DIT</strong>. This is done by addinga
<strong>subentries</strong>, which just are entries storing all the administrative
configuration.</p>
+<p>Once we know which area we need to define, and the associated roles, it's mandatory
to store those information in the <strong>DIT</strong>. This is done by adding
<strong>subentries</strong>, which just are entries storing all the administrative
configuration.</p>
 <p>An Administrative Point is stored as a <strong>subentry</strong> (which
is just a plain LDAP entry) just below the base of the defined area.</p>
 <p><DIV class="info" markdown="1">
-    A <strong>Subentry</strong> is just a plain normal entry except that it contains
administative model informations. They are stored below the entry they are managing, as a
child entry.
+    A <strong>Subentry</strong> is just a plain normal entry except that it contains
administrative model informations.
+    They are stored below the entry they are managing, as a child entry.
 </DIV></p>
 <p><DIV class="note" markdown="1">
     We also use the term "subtree" to define areas. This is due to the fact that we define
a subtree specification in the administration point to express the set of selected entries.

Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/3.1-administrative-points.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/3.1-administrative-points.html
(original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/3.1-administrative-points.html
Tue Dec 25 19:40:07 2012
@@ -147,36 +147,44 @@ role the Subentry is defined for.</p>
 <h2 id="administrative-point">Administrative Point</h2>
 <p>We will describe the types of Administrative Points we are managing and the
 way they impact their associated Administrative Areas (<em>AA</em>)</p>
-<p>We have three different kind of <em>AP</em>  :
-<em> Autonomous AP ( </em>AAP<em>)
-</em> Specific AP (<em>SAP</em>)
-<em> Inner AP (</em>IAP*)</p>
-<p>Those three different <em>AP</em>s are related with each other in this
way :
-<em> </em>AAPs<em> manage an </em>AA<em> as if all the possible
type of </em>SAP<em> where declared
-for this area
-</em> <em>SAPs</em> manage an <em>AA</em> with respect to one
specific kind of role (Access
-Control, Collective Attributes, SubSchema or Trigger Execution )
-<em> IAPs manage an </em>AA<em> inside another </em>AP<em>
-</em> An <em>AAP</em> or a <em>SAP</em> start at some point
in the tree, and all the entries
+<p>We have three different kind of <em>AP</em>  :</p>
+<ul>
+<li>Autonomous AP ( <em>AAP</em>)</li>
+<li>Specific AP (<em>SAP</em>)</li>
+<li>Inner AP (<em>IAP</em>)</li>
+</ul>
+<p>Those three different <em>APs</em> are related with each other in this
way :</p>
+<ul>
+<li><em>AAPs</em> manage an <em>AA</em> as if all the possible
type of <em>SAP</em> where declared
+for this area</li>
+<li><em>SAPs</em> manage an <em>AA</em> with respect to one
specific kind of role (Access
+Control, Collective Attributes, SubSchema or Trigger Execution )</li>
+<li>IAPs manage an <em>AA</em> inside another <em>AP</em></li>
+<li>An <em>AAP</em> or a <em>SAP</em> start at some point in
the tree, and all the entries
 below this <em>AAP</em>/<em>SAP</em> aren't related to any other
<em>AAP</em>. That also means
 that if an <em>AAP</em>/<em>SAP</em> is created below an existing
AP, then all the
 entries it covers are unlinked from the previous AP (except that for <em>SAP</em>,
 we just logically keep a link to the higher AP for all the other aspects
-but the one covered by the new <em>SAP</em>)
-<em> An </em>IAP<em> <em>must</em> be included into another
</em>AP<em>, being it an </em>AAP<em>, </em>SAP<em>
-or </em>IAP<em>. It controls a specific aspect too, as for the </em>SAP<em>,
but it will
-be combined with any of the above </em>AP*.</p>
+but the one covered by the new <em>SAP</em>)</li>
+<li>An <em>IAP</em> <em>must</em> be included into another
<em>AP</em>, being it an <em>AAP</em>, <em>SAP</em>
+or <em>IAP</em>. It controls a specific aspect too, as for the <em>SAP</em>,
but it will
+be combined with any of the above <em>AP</em>.</li>
+</ul>
 <h2 id="roles">Roles</h2>
-<p><em>AP</em> are managing some administrative aspect, defined by a role
:
-<em> ACI : Manage the access control
-</em> CollectiveAttribute : Manage the collective attributes
-<em> SubSchema (not handled atm) 
-</em> TriggrExecution : Manage the execution of stored procedures</p>
+<p><em>AP</em> are managing some administrative aspect, defined by a role
:</p>
+<ul>
+<li>ACI : Manage the access control</li>
+<li>CollectiveAttribute : Manage the collective attributes</li>
+<li>SubSchema (not handled atm) </li>
+<li>TriggrExecution : Manage the execution of stored procedures</li>
+</ul>
 <h1 id="subentry">Subentry</h1>
 <p>Once we have defined an <em>AP</em>, we can add some <em>subentries</em>
which contain
-the description of the administrative actions, including :
-<em> The area this </em>subentry<em> covers, defined by a </em>SubtreeSpecification<em>,
-named </em>subtree*.</p>
+the description of the administrative actions, including :</p>
+<ul>
+<li>The area this <em>subentry</em> covers, defined by a <em>SubtreeSpecification</em>,
+named <em>subtree</em>.</li>
+</ul>
 <p>The <em>SubtreeSpecification</em> can be complex. Its grammar is given
below :</p>
 <div class="codehilite"><pre><span class="sr">&lt;subtreeSpecificationComponent-e&gt;</span>
<span class="o">::=</span> <span class="sr">&lt;subtreeSpecificationComponent&gt;</span>
<span class="sr">&lt;sps-e&gt;</span>    <span class="sr">&lt;subtreeSpecificationComponent-list&gt;</span>
<span class="o">|</span> <span class="n">e</span>
 



Mime
View raw message