[dna-commits] DNA SVN: r378 - in trunk/docs: reference and 2 other directories.

dna-commits at lists.jboss.org dna-commits at lists.jboss.org
Tue Aug 5 14:09:39 EDT 2008


Author: rhauch
Date: 2008-08-05 14:09:39 -0400 (Tue, 05 Aug 2008)
New Revision: 378

Added:
   trunk/docs/reference/
   trunk/docs/reference/.project
   trunk/docs/reference/en/
   trunk/docs/reference/en/Author_Group.xml
   trunk/docs/reference/en/Legal_Notice.xml
   trunk/docs/reference/en/images/
   trunk/docs/reference/en/images/dna-logo.png
   trunk/docs/reference/en/master.xml
   trunk/docs/reference/pom.xml
Modified:
   trunk/docs/pom.xml
Log:
Added Reference Guide project and initial content (i.e., outline) for the document

Modified: trunk/docs/pom.xml
===================================================================
--- trunk/docs/pom.xml	2008-08-04 19:59:20 UTC (rev 377)
+++ trunk/docs/pom.xml	2008-08-05 18:09:39 UTC (rev 378)
@@ -13,5 +13,6 @@
   <description>JBoss DNA Documentation</description>
   <modules>
     <module>gettingstarted</module>
+    <module>reference</module>
   </modules>
 </project>
\ No newline at end of file


Property changes on: trunk/docs/reference
___________________________________________________________________
Name: svn:ignore
   + target


Added: trunk/docs/reference/.project
===================================================================
--- trunk/docs/reference/.project	                        (rev 0)
+++ trunk/docs/reference/.project	2008-08-05 18:09:39 UTC (rev 378)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>docs-reference-guide</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>

Added: trunk/docs/reference/en/Author_Group.xml
===================================================================
--- trunk/docs/reference/en/Author_Group.xml	                        (rev 0)
+++ trunk/docs/reference/en/Author_Group.xml	2008-08-05 18:09:39 UTC (rev 378)
@@ -0,0 +1,28 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+  ~ JBoss, Home of Professional Open Source.
+  ~
+  ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+  ~ indicated by the @author tags or express copyright attribution
+  ~ statements applied by the authors.  All third-party contributions are
+  ~ distributed under license by Red Hat Middleware LLC.
+  ~
+  ~ This copyrighted material is made available to anyone wishing to use, modify,
+  ~ copy, or redistribute it subject to the terms and conditions of the GNU
+  ~ Lesser General Public License, as published by the Free Software Foundation.
+  ~
+  ~ This program is distributed in the hope that it will be useful,
+  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+  ~ or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
+  ~ for more details.
+  ~
+  ~ You should have received a copy of the GNU Lesser General Public License
+  ~ along with this distribution; if not, write to:
+  ~ Free Software Foundation, Inc.
+  ~ 51 Franklin Street, Fifth Floor
+  ~ Boston, MA  02110-1301  USA
+  -->
+<!DOCTYPE authorgroup PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<authorgroup>
+  <corpauthor>Randall Hauch</corpauthor>
+</authorgroup>
\ No newline at end of file

Added: trunk/docs/reference/en/Legal_Notice.xml
===================================================================
--- trunk/docs/reference/en/Legal_Notice.xml	                        (rev 0)
+++ trunk/docs/reference/en/Legal_Notice.xml	2008-08-05 18:09:39 UTC (rev 378)
@@ -0,0 +1,56 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!--
+  ~ JBoss, Home of Professional Open Source.
+  ~
+  ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+  ~ indicated by the @author tags or express copyright attribution
+  ~ statements applied by the authors.  All third-party contributions are
+  ~ distributed under license by Red Hat Middleware LLC.
+  ~
+  ~ This copyrighted material is made available to anyone wishing to use, modify,
+  ~ copy, or redistribute it subject to the terms and conditions of the GNU
+  ~ Lesser General Public License, as published by the Free Software Foundation.
+  ~
+  ~ This program is distributed in the hope that it will be useful,
+  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+  ~ or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
+  ~ for more details.
+  ~
+  ~ You should have received a copy of the GNU Lesser General Public License
+  ~ along with this distribution; if not, write to:
+  ~ Free Software Foundation, Inc.
+  ~ 51 Franklin Street, Fifth Floor
+  ~ Boston, MA  02110-1301  USA
+  -->
+<!DOCTYPE legalnotice PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+<legalnotice id="Legal_Notice">
+    <title>Legal Notice</title>
+    <para>
+        <address>
+            <street>1801 Varsity Drive</street>
+            <city>Raleigh</city>, <state>NC</state><postcode>27606-2072</postcode><country>USA</country>
+            <phone>Phone: +1 919 754 3700</phone>
+            <phone>Phone: 888 733 4281</phone>
+            <fax>Fax: +1 919 754 3701</fax>
+            <pob>PO Box 13588</pob><city>Research Triangle Park</city>, <state>NC</state><postcode>27709</postcode><country>USA</country>
+        </address>
+    </para>
+    <para>
+        Copyright <trademark class="copyright"/> 2008 by Red Hat, Inc.  This copyrighted material is made available to
+        anyone wishing to use, modify, copy, or redistribute it subject to the terms and conditions of the
+        GNU <ulink url="http://www.gnu.org/licenses/lgpl-2.1.html">Lesser General Public License</ulink>, as published
+        by the Free Software Foundation.
+    </para>
+    <para>
+        Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries.
+    </para>
+    <para>
+        All other trademarks referenced herein are the property of their respective owners.
+    </para>
+    <para>
+        The GPG fingerprint of the security at redhat.com key is:
+    </para>
+    <para>
+        CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E
+    </para>
+</legalnotice>

Added: trunk/docs/reference/en/images/dna-logo.png
===================================================================
(Binary files differ)


Property changes on: trunk/docs/reference/en/images/dna-logo.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/docs/reference/en/master.xml
===================================================================
--- trunk/docs/reference/en/master.xml	                        (rev 0)
+++ trunk/docs/reference/en/master.xml	2008-08-05 18:09:39 UTC (rev 378)
@@ -0,0 +1,553 @@
+<!--
+  ~ JBoss, Home of Professional Open Source.
+  ~
+  ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+  ~ indicated by the @author tags or express copyright attribution
+  ~ statements applied by the authors.  All third-party contributions are
+  ~ distributed under license by Red Hat Middleware LLC.
+  ~
+  ~ This copyrighted material is made available to anyone wishing to use, modify,
+  ~ copy, or redistribute it subject to the terms and conditions of the GNU
+  ~ Lesser General Public License, as published by the Free Software Foundation.
+  ~
+  ~ This program is distributed in the hope that it will be useful,
+  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+  ~ or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
+  ~ for more details.
+  ~
+  ~ You should have received a copy of the GNU Lesser General Public License
+  ~ along with this distribution; if not, write to:
+  ~ Free Software Foundation, Inc.
+  ~ 51 Franklin Street, Fifth Floor
+  ~ Boston, MA  02110-1301  USA
+  -->
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
+<!ENTITY % RH-ENTITIES SYSTEM "Common_Config/rh-entities.ent">
+<!ENTITY versionNumber "0.2">
+<!ENTITY copyrightYear "2008">
+<!ENTITY copyrightHolder "Red Hat Middleware, LLC.">]>
+<book>
+  <bookinfo>
+    <title>JBoss DNA</title>
+    <subtitle>Reference Guide</subtitle>
+    <releaseinfo>&versionNumber;
+    </releaseinfo>
+    <productnumber>&versionNumber;
+    </productnumber>
+    <issuenum>1</issuenum>
+    <mediaobject>
+      <imageobject role="fo">
+        <imagedata fileref="images/dna-logo.png" align="center" />
+      </imageobject>
+      <imageobject role="pdf">
+        <imagedata fileref="images/dna-logo.png" scale="75" align="center" />
+      </imageobject>
+      <imageobject role="html">
+        <imagedata fileref="images/dna-logo.png" depth="3cm" />
+      </imageobject>
+      <imageobject role="xhtml">
+        <imagedata fileref="images/dna-logo.png" depth="3cm" />
+      </imageobject>
+      <imageobject role="xhtml_single">
+        <imagedata fileref="images/dna-logo.png" depth="3cm" />
+      </imageobject>
+    </mediaobject>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Author_Group.xml" />
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Legal_Notice.xml" />
+  </bookinfo>
+  <preface id="preface" revision="1">
+    <title>Target audience</title>
+    <para>This guide is for the developers of JBoss DNA and those users that want to have a better understanding of
+	  how JBoss DNA works or how to extend the functionality.  For a higher-level introduction to JBoss DNA, see
+	  the <ulink url="http://www.jboss.org/file-access/default/members/dna/freezone/docs/0.2/manuals/gettingstarted/html/index.html">Getting Started</ulink> document.</para>
+    <para>
+      If you have any questions or comments, please feel free to contact JBoss DNA's
+      <ulink url="mailto:dna-users at jboss.org">user mailing list</ulink>
+      or use the
+      <ulink url="http://www.jboss.com/index.html?module=bb&amp;op=viewforum&amp;f=272">user forums</ulink>
+      . If you'd like to get involved on the project, join the
+      <ulink url="http://www.jboss.org/dna/lists.html">mailing lists</ulink>
+      ,
+      <ulink url="http://www.jboss.org/dna/subversion.html">download the code</ulink>
+      and get it building, and visit our
+      <ulink url="http://jira.jboss.org/jira/browse/DNA">JIRA issue management system</ulink>
+      . If there's something in particular you're interested in, talk with the community - there may be others interested in the
+      same thing.
+    </para>
+  </preface>
+  <!--  ====================================================================================================
+                                               Chapter 
+        ====================================================================================================   -->
+  <chapter id="introduction">
+    <title>Introduction to JBoss DNA</title>
+    <para>There are a lot of choices for how applications can store information persistently so that it can be accessed at a
+      later time and by other processes. The challenge developers face is how to use an approach that most closely matches the
+      needs of their application. This choice becomes more important as developers choose to focus their efforts on
+      application-specific logic, delegating much of the responsibilities for persistence to libraries and frameworks.</para>
+    <para>
+      Perhaps one of the easiest techniques is to simply store information in
+      <emphasis>files</emphasis>
+      . The Java language makes working with files relatively easy, but Java really doesn't provide many bells and whistles. So
+      using files is an easy choice when the information is either not complicated (for example property files), or when users may
+      need to read or change the information outside of the application (for example log files or configuration files). But using
+      files to persist information becomes more difficult as the information becomes more complex, as the volume of it increases,
+      or if it needs to be accessed by multiple processes. For these situations, other techniques often offer better choices.
+    </para>
+    <para>
+      Another technique built into the Java language is
+      <emphasis>Java serialization</emphasis>
+      , which is capable of persisting the state of an object graph so that it can be read back in at a later time. However, Java
+      serialization can quickly become tricky if the classes are changed, and so it's beneficial usually when the information is
+      persisted for a very short period of time. For example, serialization is sometimes used to send an object graph from one
+      process to another.
+    </para>
+    <para>
+      One of the more popular persistence technologies is the
+      <emphasis>relational database</emphasis>
+      . Relational database management systems have been around for decades and are very capable. The Java Database Connectivity
+      (JDBC) API provides a standard interface for connecting to and interacting with relational databases. However, it is a
+      low-level API that requires a lot of code to use correctly, and it still doesn't abstract away the DBMS-specific SQL
+      grammar. Also, working with relational data in an object-oriented language can feel somewhat unnatural, so many developers
+      map this data to classes that fit much more cleanly into their application. The problem is that manually creating this
+      mapping layer requires a lot of repetitive and non-trivial JDBC code.
+    </para>
+    <para>
+      <emphasis>Object-relational mapping</emphasis>
+      libraries automate the creation of this mapping layer and result in far less code that is much more maintainable with
+      performance that is often as good as (if not better than) handwritten JDBC code. The new
+      <ulink url="http://java.sun.com/developer/technicalArticles/J2EE/jpa/">Java Persistence API (JPA)</ulink>
+      provide a standard mechanism for defining the mappings (through annotations) and working with these entity objects. Several
+      commercial and open-source libraries implement JPA, and some even offer additional capabilities and features that go beyond
+      JPA. For example,
+      <ulink url="http://www.hibernate.org">Hibernate</ulink>
+      is one of the most feature-rich JPA implementations and offers object caching, statement caching, extra association
+      mappings, and other features that help to improve performance and usefulness.
+    </para>
+    <para>
+      While relational databases and JPA are solutions that work for many applications, they become more limited in cases when the
+      information structure is highly flexible, is not known
+      <emphasis>a priori</emphasis>
+      , or is subject to frequent change and customization. In these situations,
+      <emphasis>content repositories</emphasis>
+      may offer a better choice for persistence. Content repositories are almost a hybrid between relational databases and file
+      systems, and typically provide other capabilities as well, including versioning, indexing, search, access control,
+      transactions, and observation. Because of this, content repositories are used by content management systems (CMS), document
+      management systems (DMS), and other applications that manage electronic files (e.g., documents, images, multi-media, web
+      content, etc.) and metadata associated with them (e.g., author, date, status, security information, etc.). The
+      <ulink url="http://www.jcp.org/en/jsr/detail?id=170">Content Repository for Java technology API</ulink>
+      provides a standard Java API for working with content repositories. Abbreviated "JCR", this API was developed as part of the
+      Java Community Process under
+      <ulink url="http://www.jcp.org/en/jsr/detail?id=170">JSR-170</ulink>
+      and is being revised under
+      <ulink url="http://www.jcp.org/en/jsr/detail?id=283">JSR-283</ulink>
+      .
+    </para>
+    <para>
+      The
+      <emphasis>JBoss DNA project</emphasis>
+      is building the tools and services that surround content repositories. Nearly all of these capabilities are to be hidden
+      below the JCR API and involve automated processing of the information in the repository. Thus, JBoss DNA can add value to
+      existing repository implementations. For example, JCR repositories offer the ability to upload files into the repository and
+      have the file content indexed for search purposes. JBoss DNA also defines a library for "sequencing" content - to extract
+      meaningful information from that content and store it in the repository, where it can then be searched, accessed, and
+      analyzed using the JCR API.
+    </para>
+    <para> JBoss DNA is building other features as well. One goal of JBoss DNA is to create federated repositories that
+      dynamically merge the information from multiple databases, services, applications, and other JCR repositories. Another is to
+      create customized views based upon the type of data and the role of the user that is accessing the data. And yet another is
+      to create a REST-ful API to allow the JCR content to be accessed easily by other applications written in other languages.
+    </para>
+    <sect1 id="roadmap">
+      <title>Project roadmap</title>
+      <para>The roadmap for JBoss DNA is managed in the project's <ulink url="https://jira.jboss.org/jira/browse/DNA">JIRA instance</ulink>.
+			  The roadmap shows the different tasks, requirements, issues and other activities that have been targeted to each of the upcoming releases.
+			  (The <ulink url="https://jira.jboss.org/jira/browse/DNA?report=com.atlassian.jira.plugin.system.project:roadmap-panel">roadmap report</ulink>
+			  always shows the next three releases.)</para>
+			<para>By convention, JIRA issues not immediately targeted to a release will be reviewed periodically to determine the appropriate release
+				where they can be targeted.  Any issue that is reviewed and that does not fit in a known release will be targeted to the
+				<ulink url="https://jira.jboss.org/jira/browse/DNA?report=com.atlassian.jira.plugin.system.project:roadmap-panel">Future Releases</ulink>
+				bucket.  This should be reviewed periodically and at least at the beginning of each release cycle, with the goal of targeting most
+				of the issues to specific releases.</para>
+		</sect1>
+    <sect1 id="modules">
+      <title>JBoss DNA modules</title>
+      <para>JBoss DNA consists of the following modules:
+	      <itemizedlist>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-common</emphasis>
+              is a low-level library of common utilities and frameworks, including logging, progress monitoring, internationalization/localization,
+              text translators, component management, and class loader factories.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-spi</emphasis>
+              defines the Service Provider Interface (SPI) for DNA, including the repository connectors, sequencers, graph interfaces, and MIME type detectors.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-repository</emphasis>
+              is the main module and provides the repository-oriented services, including the Repository Service, Sequencing Service, Observation Service, and Rules Service.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-jcr</emphasis>
+              provides the JBoss DNA implementation of the JCR API, which relies upon a repository connector, such as the Federation Connector
+							(see <code>dna-connector-federation</code>).
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-integration-tests</emphasis>
+              provides a home for all of the integration tests that involve more components that just unit tests.  Integration tests
+ 							are often more complicated, take longer, and involve testing the integration and functionality of many components 
+							(whereas unit tests focus on testing a single class or component and may use stubs or mock objects for other components).
+						</para>
+          </listitem>
+				</itemizedlist>
+				The following modules are optional extensions that may be used selectively and as needed 
+				(and are located in the source under the <code>extensions</code> directory):
+				<itemizedlist>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-maven-classloader</emphasis>
+              is a small library that provides a <code>ClassLoaderFactory</code> implementation that can create <code>java.lang.ClassLoader</code> instances capable of loading
+  						classes given a Maven Repository and a list of Maven coordinates.  The Maven Repository can be managed within a JCR repository.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-connector-federation</emphasis>
+              is a DNA repository connector that federates, integrates and caches information from multiple sources (via other repository connectors).
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-connector-inmemory</emphasis>
+              is a simple DNA repository connector that manages content within memory.  This can be used as a simple cache or as a transient
+							repository.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-connector-jbosscache</emphasis>
+              is a DNA repository connector that manages content within a <ulink url="http://www.jboss.org/jbosscache/">JBoss Cache</ulink> instance.  JBoss Cache is a powerful cache implementation
+							that can serve as a distributed cache and that can persist information.  The cache instance can be found via JNDI or created and managed
+							by the connector.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-sequencer-zip</emphasis>
+              is a DNA sequencer that extracts from ZIP archives the files (with content) and folders.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-sequencer-images</emphasis>
+              is a DNA sequencer that extracts the image metadata (e.g., size, date, etc.) from PNG, JPEG, GIF, BMP, PCS, IFF, RAS, PBM, PGM, and PPM image files.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-sequencer-mp3</emphasis>
+              is a DNA sequencer that extracts metadata (e.g., author, album name, etc.) from MP3 audio files.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-sequencer-java</emphasis>
+              is a DNA sequencer that extracts the package, class/type, member, documentation, annotations, and other information from
+							Java source files.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-sequencer-msoffice</emphasis>
+              is a DNA sequencer that extracts metadata and summary information from <ulink url="http://office.microsoft.com/en-us/">Microsoft Office</ulink> documents.  For example, the sequencer
+							extracts from a PowerPoint presentation the outline as well as thumbnails of each slide.  Microsoft Word and Excel files are also supported.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-sequencer-cnd</emphasis>
+              is a DNA sequencer that extracts JCR node definitions from JCR Compact Node Definition (CND) files.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna-mimetype-detector-aperture</emphasis>
+              is a DNA MIME type detector that uses the <ulink url="http://aperture.sourceforge.net/">Aperture</ulink> library to determine the best MIME type
+							from the filename and file contents.
+            </para>
+          </listitem>
+				</itemizedlist>
+				There are also documentation modules
+				(located in the source under the <code>docs</code> directory):
+				<itemizedlist>
+          <listitem>
+            <para>
+              <emphasis role="strong">docs-getting-started</emphasis>
+              is the project with the <ulink url="http://www.docbook.org/">DocBook</ulink> source for the JBoss DNA Getting Started document.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">docs-getting-started-examples</emphasis>
+              is the project with the Java source for the example application used in the JBoss DNA Getting Started document.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">docs-reference-guide</emphasis>
+              is the project with the <ulink url="http://www.docbook.org/">DocBook</ulink> source for this document, the JBoss DNA Reference Guide document.
+            </para>
+          </listitem>
+				</itemizedlist>
+				Finally, there is a module that represents the whole JBoss DNA project:
+				<itemizedlist>
+          <listitem>
+            <para>
+              <emphasis role="strong">dna</emphasis>
+              is the parent project that aggregates all of the other projects and that contains some asset files to create the necessary Maven artifacts during a build.
+            </para>
+          </listitem>
+				</itemizedlist>
+			Each of these modules is a Maven project with a group ID of <code>org.jboss.dna</code>.  All of these projects correspond to artifacts in the 
+			<ulink url="http://repository.jboss.com/maven2/">JBoss Maven 2 Repository</ulink>.</para>
+		</sect1>
+  </chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="classloaders">
+	  <title>Class loaders</title>
+	  <para></para>
+    <sect1 id="dna-maven-classloader">
+      <title>Maven Repository class loader</title>
+      <para></para>
+		</sect1>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="security">
+	  <title>Security</title>
+	  <para>JBoss DNA uses the <ulink url="http://java.sun.com/javase/technologies/security/">Java Authentication and Authorization Service (JAAS)</ulink>
+			for its security mechanism.  This offers the greatest flexibility and power for integrating JBoss DNA into other applications.
+		</para>
+    <sect1 id="jboss-security">
+      <title>JBoss Security</title>
+      <para>The <ulink url="http://www.jboss.org/jbosssecurity/">JBoss Security</ulink> provides one of the best and most powerful 
+				implementations of the JAAS specification - plus it's open source.  JBoss Security offers a number of login modules, including:
+				<itemizedlist>
+          <listitem>
+            <para>
+              <emphasis role="strong">User-Roles Login Module</emphasis>
+              is a simple <code>javax.security.auth.login.LoginContext</code> implementation that uses usernames and passwords stored
+							in a properties file.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">Client Login Module</emphasis>
+              prompts the user for their username and password.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">Database Server Login Module</emphasis>
+              uses a JDBC database to authenticate principals and associate them with roles.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">LDAP Login Module</emphasis>
+              uses an LDAP directory to authenticate principals.  Two implementations are available.
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">Certificate Login Module</emphasis>
+              authenticates using X509 certificates, obtaining roles from either property files or a JDBC database. 
+            </para>
+          </listitem>
+          <listitem>
+            <para>
+              <emphasis role="strong">Operating System Login Module</emphasis>
+              authenticates using the operating system's mechanism.
+            </para>
+          </listitem>
+				</itemizedlist>
+				and many others.
+			</para>
+			<para>JBoss Security also provides other capabilities, such as using XACML policies or using federated single sign-on.
+				For more detail, see the <ulink url="http://www.jboss.org/jbosssecurity/">JBoss Security</ulink> project.
+			</para>
+		</sect1>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="repositories">
+	  <title>Repositories</title>
+	  <para></para>
+    <sect1 id="repository-service">
+      <title>Repository Service</title>
+      <para></para>
+		</sect1>
+		<sect1 id="connectors">
+		  <title>Repository connectors and sources</title>
+		  <para></para>
+	    <sect2 id="dna-connector-inmemory">
+	      <title>In-memory connector</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-connector-jbosscache">
+	      <title>JBoss Cache connector</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-connector-federation">
+	      <title>Federating connector</title>
+	      <para></para>
+			</sect2>
+		</sect1>
+    <sect1 id="custom-connectors">
+      <title>Writing custom connectors</title>
+      <para></para>
+		</sect1>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="jcr">
+	  <title>Content Repositories for Java (JCR)</title>
+	  <para></para>
+    <sect1 id="jcr-repositories">
+      <title>Obtaining JCR repositories</title>
+      <para>Discuss how to obtain JCR repository instances (from the Repository Service).
+			</para>
+		</sect1>
+    <sect1 id="jcr-sessions">
+      <title>Creating JCR sessions</title>
+      <para>Discuss how to obtain JCR sessions and how the credentials work.  
+				Also discuss that sessions should be created, used, and closed.
+			</para>
+		</sect1>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="sequencing">
+	  <title>Sequencing content</title>
+	  <para></para>
+    <sect1 id="sequencing-service">
+      <title>Sequencing Service</title>
+      <para></para>
+		</sect1>
+    <sect1 id="sequencers">
+      <title>JBoss DNA Sequencers</title>
+      <para></para>
+	    <sect2 id="dna-sequencer-images">
+	      <title>Image sequencer</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-sequencer-msoffice">
+	      <title>Microsoft Office document sequencer</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-sequencer-zip">
+	      <title>ZIP archive sequencer</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-sequencer-java">
+	      <title>Java source sequencer</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-sequencer-mp3">
+	      <title>MP3 audio file sequencer</title>
+	      <para></para>
+			</sect2>
+	    <sect2 id="dna-sequencer-cnd">
+	      <title>JCR Compact Node Definition (CND) file sequencer</title>
+	      <para></para>
+			</sect2>
+		</sect1>
+    <sect1 id="custom-sequencers">
+      <title>Writing custom sequencers</title>
+      <para></para>
+		</sect1>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="mimetypes">
+	  <title>MIME types</title>
+	  <para></para>
+    <sect1 id="detectors">
+      <title>JBoss DNA MIME type detectors</title>
+      <para></para>
+	    <sect2 id="dna-mimetype-detector-aperture">
+	      <title>Aperture MIME type detector</title>
+	      <para></para>
+			</sect2>
+		</sect1>
+    <sect1 id="custom-detectors">
+      <title>Writing custom detectors</title>
+      <para></para>
+		</sect1>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="configuration">
+	  <title>Configuration</title>
+	  <para>Discuss how to configure JBoss DNA and how configuration repositories are used to bootstrap the
+			various services and components.  Describe how the next release will focus on making this easier
+			and will detail configuration using the <ulink url="http://www.jboss.org/jbossmc/">JBoss Microcontainer</ulink>.</para>
+	</chapter>
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="testing">
+	  <title>Testing</title>
+	  <para></para>
+    <sect1 id="unit-tests">
+      <title>Unit tests</title>
+      <para></para>
+		</sect1>
+    <sect1 id="integration-tests">
+      <title>Integration tests</title>
+      <para></para>
+		</sect1>
+	</chapter>
+
+  
+	<!--  ====================================================================================================
+	                                               Chapter 
+	      ====================================================================================================   -->
+	<chapter id="future_directions">
+	  <title>Looking to the future</title>
+	  <para>What's next for JBoss DNA?  Well, the sequencing system is just the beginning.  With this release, the sequencing system
+	  is stable enough so that more <link linkend="sequencers">sequencers</link> can be developed and used within your own applications.
+	  If you're interested in getting involved with the JBoss DNA project, consider picking up one of the sequencers on our
+	  <ulink url="http://jira.jboss.org/jira/browse/DNA?report=com.atlassian.jira.plugin.system.project:roadmap-panel">roadmap</ulink>.
+	  Or, check out <ulink url="http://jira.jboss.org/jira/secure/IssueNavigator.jspa?reset=true&amp;mode=hide&amp;pid=12310520&amp;sorter/order=DESC&amp;sorter/field=priority&amp;resolution=-1&amp;component=12311436">JIRA</ulink>
+	  for the list of sequencers we've thought of.  If you think of one that's not there, please add it to JIRA!
+	  </para>
+	  <para>
+	  The next release will focus on creating the <link linkend="federation">federation engine</link> and connectors
+	  for several popular and ubiquitous systems.  The 0.2 release will likely only federate information in a read-only manner,
+	  but updates will soon follow.  Also, during the early part of the next release, the JBoss DNA project will switch to use JDK 6.  
+	  Java 5 is being end-of-lifed, so we want to move to a supported JDK. However, a number of JBoss projects and products continue to
+	  require Java 5, so our next release will most likely use JDK 6 with Java 5 compatibility.</para>
+	  <para>
+	  Other components on our roadmap include a web user interface, a REST-ful server, and a view system that allows domain-specific
+	  views of information in the repository.  These components are farther out on our roadmap, and at this time have not been
+	  targeted to a particular release.  If any of these are of interest to you, please <link linkend="preface">get involved</link> in the community.
+	  </para>
+	</chapter>
+</book>
\ No newline at end of file

Added: trunk/docs/reference/pom.xml
===================================================================
--- trunk/docs/reference/pom.xml	                        (rev 0)
+++ trunk/docs/reference/pom.xml	2008-08-05 18:09:39 UTC (rev 378)
@@ -0,0 +1,17 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.jboss</groupId>
+        <artifactId>documentation</artifactId>
+        <version>1.0</version>
+    </parent>
+    
+    <groupId>org.jboss.dna</groupId>
+    <artifactId>reference-guide-${translation}</artifactId>
+    <version>0.2-SNAPSHOT</version>
+    <packaging>jdocbook</packaging>
+    <name>JBoss DNA Reference Guide (${translation})</name>
+
+</project>
\ No newline at end of file




More information about the dna-commits mailing list