From dna-commits at lists.jboss.org Wed Apr 30 15:30:18 2008 Content-Type: multipart/mixed; boundary="===============1327535115491864143==" MIME-Version: 1.0 From: dna-commits at lists.jboss.org To: dna-commits at lists.jboss.org Subject: [dna-commits] DNA SVN: r114 - in trunk/docs/getting_started/en: images and 1 other directory. Date: Wed, 30 Apr 2008 15:30:18 -0400 Message-ID: --===============1327535115491864143== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Author: rhauch Date: 2008-04-30 15:30:18 -0400 (Wed, 30 Apr 2008) New Revision: 114 Added: trunk/docs/getting_started/en/images/dna-architecture.png Removed: trunk/docs/getting_started/en/images/build.png trunk/docs/getting_started/en/images/docbook-dir.png Modified: trunk/docs/getting_started/en/master.xml Log: Added overview and architecture sections. Deleted: trunk/docs/getting_started/en/images/build.png =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D (Binary files differ) Added: trunk/docs/getting_started/en/images/dna-architecture.png =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D (Binary files differ) Property changes on: trunk/docs/getting_started/en/images/dna-architecture.= png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Deleted: trunk/docs/getting_started/en/images/docbook-dir.png =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D (Binary files differ) Modified: trunk/docs/getting_started/en/master.xml =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/docs/getting_started/en/master.xml 2008-04-30 17:52:22 UTC (rev 1= 13) +++ trunk/docs/getting_started/en/master.xml 2008-04-30 19:30:18 UTC (rev 1= 14) @@ -8,19 +8,18 @@ Getting Started Guide 0.1 1 - - + + What this book covers The goal of this book is to help you learn about JBoss DNA and h= ow you can use it in your own applications to get the most out of your JCR repositories. - The part of the book starts out with an introduction to content = repositories and an overview of the JCR API, both of which are an - important aspect of JBoss DNA. This is followed by an overview of the= the JBoss DNA project, it's architecture, and a basic - roadmap for what's coming next. - The next part of the book covers how to download and build the e= xamples, how to use JBoss DNA with - existing repositories, and how to build and use custom sequencers. - + The part of the book starts out with an introduction to content = repositories and an overview of the JCR API, both of + which are an important aspect of JBoss DNA. This is followed by an o= verview of the the JBoss DNA project, it's architecture, + and a basic roadmap for what's coming next. + The next part of the book covers how to download and build the e= xamples, how to use JBoss DNA with existing + repositories, and how to build and use custom sequencers. If you have any questions or comments, please feel free to contact J= Boss DNA's user mailing list @@ -132,6 +131,137 @@ JBoss DNA + Overview + JBoss DNA is a repository and set of tools that make it easy t= o capture, version, analyze, and understand the + fundamental building blocks of information. As models, service and= process definitions, schemas, source code, and other + artifacts are added to the repository, JBoss DNA "sequences" the m= akeup of these components and extracts their structure + and interdependencies. The JBoss DNA web application allows end us= ers to access, visualize, and edit this information in + the terminology and structure they are familiar with. Such domain-= specific solutions can be easily created with little or + no programming. + JBoss DNA supports the Java Content Repository (JCR) standard= and is able to provide a single integrated view of + multiple repositories, external databases, services, and applicati= ons, ensuring that JBoss DNA has access to the latest + and most reliable master data. For instance, DNA could provide in = a single view valuable insight into the business + processes and process-level services impacted by a change to in an= intermediary web server operation defined via WSDL. + Similarly, a user could quickly view and navigate the dependencies= between the data source models and transformation + information stored within a content repository, the code base stor= ed within a version control system, and the database + schemas used by an application. + + + Architecture + The architecture for JBoss DNA consists of several major compo= nents that will be built on top of standard APIs, + including JCR, JDBC, JNDI and HTTP. The goal is to allow these com= ponents to be assembled as needed and add value on top + of other DNA components or third-party systems that support the st= andard APIs. + +
+ JBoss DNA Architecture + +
+ + As shown in the diagram above, the major components are (starting = at the top): + + + + DNA Eclipse Plugins + enable Eclipse users to access the contents of a JBoss DNA r= epository. + + + + + DNA JDBC Driver + provides a driver implementation, allowing JDBC-aware applic= ations to connect to and use a JBoss DNA repository. + + + + + DNA Remote JCR + is a client-side component for accessing remote JCR reposito= ries. + + + + + DNA Web Application + is used by end users and domain experts to visualize, search= , edit, change and tag the repository content. The web + application uses views to define how different types of info= rmation are to be presented and edited in + domain-specific ways. The goal is that this web application = is easily customized and branded for inclusion into + other solutions and application systems. The DNA Web Applica= tion operate upon any JCR-compliant repository, although + it does rely upon the DNA analysis and templating services. + + + + + DNA Publishing Server + allows content to be downloaded, uploaded and edited using t= he Atom Publishing Protocol. With the DNA Publishing + Server, the content of the repository can easily be created,= read, edited and deleted using the standard HTTP + operations of POST, GET, PUT and DELETE (respectively). More= and more tools are being created that support working + with Atom Publishing servers. The DNA Publishing Server oper= ates upon any JCR-compliant repository. + + + + + DNA WebDAV Server + allows clients such as Microsoft Windows and Apple OS X to c= onnect to, read and edit the content in the repository + using the WebDAV standard. Since WebDAV is an extension of H= TTP, web browsers are able to read (but not modify) the + content served by a WebDAV compliant server. The DNA WebDAV = Server operates upon any JCR-compliant repository. + + + + + DNA Sequencers + are pluggable components that make it possible for content t= o be uploaded to the repository and automatically + processed to extract meaningful structure and place that str= ucture in the repository. Once this information is in + the repository, it can be viewed, edited, analyzed, searched= , and related to other content. DNA defines a Java + interface that sequencers must implement. DNA sequencers ope= rate upon any JCR-compliant repository. + + + + + DNA Analyses + are pluggable components that analyze the content and the re= lationships between the content to generate reports or + to answer queries. DNA will include some standard analyzers,= like dependency analysis and similarity analysis, that + are commonly needed by many different solutions. DNA analyze= rs operate upon any JCR-compliant repository. + + + + + DNA Views + are definitions of how types of information are to be presen= ted in a user interface to allow for creation, reading, + editing, and deletion of information. DNA view definitions c= onsist of data stored in a JCR repository, and as such + views can be easily added, changed or removed entirely by us= ing the DNA Web Application, requiring no programming. + + + + + DNA Federation + is an implementation of the JCR API that builds the content = within the repository by accessing and integrating + information from multiple sources. DNA Federation allows the= integration of external system, like other JCR + repositories, databases, applications, and services. + + + + + DNA Connectors + are used to communicate with these external sources of infor= mation. In the federation engine, each source is able to + contribute node structure and node properties to any part of= the federated graph, although typically many connectors + will contribute most of their information to isolated subgra= phs. The result is that integration from a wide range of + systems can be integrated and accessed through the DNA Web A= pplication, DNA Publishing Server, and DNA WebDAV + Server. Connectors also may optionally participate in distri= buted transactions by exposing an XAResource. + + + + + DNA Maven + is a classloader library compatible with Maven 2 project dep= endencies. This allows the creation of Java ClassLoader + instances using Maven 2 style paths, and all dependencies ar= e transitively managed and included. + + + + +
+ Sequencers The current JBoss DNA release contains a sequencing framework= that is designed to sequence data (typically files) stored in a JCR repository to automatically extract meaningful and= useful information. This additional information is then @@ -150,11 +280,11 @@ - Image sequencer - A sequencer that processes the binary cont= ent of an image file, extracts the metadata for the - image, and then writes that image metadata to the repository= . Gets the file format, image resolution, number of bits - per pixel and optionally number of images, comments and phys= ical resolution from JPEG, GIF, BMP, PCX, PNG, IFF, RAS, - PBM, PGM, PPM and PSD files. (This sequencer may be improved= in the future to also extract EXIF metadata from JPEG - files; see + Image sequencer + - A sequencer that processes the binary content of an image = file, extracts the metadata for the image, and then + writes that image metadata to the repository. Gets the file = format, image resolution, number of bits per pixel and + optionally number of images, comments and physical resolutio= n from JPEG, GIF, BMP, PCX, PNG, IFF, RAS, PBM, PGM, PPM + and PSD files. (This sequencer may be improved in the future= to also extract EXIF metadata from JPEG files; see DNA-= 26 .) @@ -167,94 +297,103 @@ - XML Schema Document (XSD) Sequencer - Process XSD files and = extract the various elements, attributes, complex types, - simple types, and groups. (See + XML Schema Document (XSD) Sequence= r + - Process XSD files and extract the various elements, attrib= utes, complex types, simple types, and groups. (See DNA-= 32 ) - Web Service Definition Language (WSDL) Sequencer - Process W= SDL files and extract the services, bindings, ports, - operations, parameters, and other information. (See + Web Service Definition Language (W= SDL) Sequencer + - Process WSDL files and extract the services, bindings, por= ts, operations, parameters, and other information. (See DNA-= 33 ) - Hibernate File Sequencer - Process Hibernate configuration (= cfg.xml) and mapping (hbm.xml) files to extract the - configuration and mapping information. (See + Hibernate File Sequencer + - Process Hibernate configuration (cfg.xml) and mapping (hbm= .xml) files to extract the configuration and mapping + information. (See DNA-= 61 ) - XML Metadata Interchange (XMI) Sequencer - Process XMI docum= ents that contain UML models or models using another - metamodel, extracting the model structure into the repositor= y. (See + XML Metadata Interchange (XMI) Seq= uencer + - Process XMI documents that contain UML models or models us= ing another metamodel, extracting the model structure + into the repository. (See DNA-= 31 ) - ZIP Archive Sequencer - Process ZIP archive files to extract= (explode) the contents into the repository. (See + ZIP Archive Sequencer + - Process ZIP archive files to extract (explode) the content= s into the repository. (See DNA-= 63 ) - Java Archive (JAR) Sequencer - Process JAR files to extract = (explode) the contents into the classes and file - resources. (See + Java Archive (JAR) Sequencer + - Process JAR files to extract (explode) the contents into t= he classes and file resources. (See DNA-= 64 ) - Java Class File Sequencer - Process Java class files (byteco= de) to extract the class structure (including - annotations) into the repository. (See + Java Class File Sequencer + - Process Java class files (bytecode) to extract the class s= tructure (including annotations) into the repository. + (See DNA-= 62 ) - Java Source File Sequencer - Process Java source files (byte= code) to extract the class structure (including - annotations) into the repository. (See + Java Source File Sequencer + - Process Java source files (bytecode) to extract the class = structure (including annotations) into the repository. + (See DNA-= 51 ) - PDF Sequencer - Process PDF files to extract the document me= tadata, including table of contents. (See + PDF Sequencer + - Process PDF files to extract the document metadata, includ= ing table of contents. (See DNA-= 50 ) - Maven 2 POM Sequencer - Process Maven 2 Project Object Model= (POM) files to extract the project information, - dependencies, plugins, and other content. (See + Maven 2 POM Sequencer + - Process Maven 2 Project Object Model (POM) files to extrac= t the project information, dependencies, plugins, and + other content. (See DNA-= 24 ) - Data Definition Language (DDL) Sequencer - Process various d= ialects of DDL, including that from Oracle, SQL Server, - MySQL, PostgreSQL, and others. May need to be split up into = a different sequencer for each dialect. (See + Data Definition Language (DDL) Seq= uencer + - Process various dialects of DDL, including that from Oracl= e, SQL Server, MySQL, PostgreSQL, and others. May need + to be split up into a different sequencer for each dialect. = (See DNA-= 26 ) - MP3 and MP4 Sequencer - Process MP3 and MP4 audio files to e= xtract the name of the song, artist, album, track - number, and other metadata. (See + MP3 and MP4 Sequencer + - Process MP3 and MP4 audio files to extract the name of the= song, artist, album, track number, and other metadata. + (See DNA-= 30 ) @@ -265,8 +404,8 @@ The examples in this book go into more detail about how sequencers are managed = and used, and -Chapter 5 goes into detail abou= t how to - write custom sequencers. + Chapter 5 + goes into detail about how to write custom sequencers. @@ -299,41 +438,63 @@ in those systems. Some ideas for connectors include: - JCR Repository Connector - Connect to and interact wit= h other JCR repositories. + + JCR Repository Connector + - Connect to and interact with other JCR repositories. + - File System Connector - Expose the files and directori= es on a file system through JCR. + + File System Connector + - Expose the files and directories on a file system throug= h JCR. + - Maven 2 Repository Connector - Access and expose the c= ontents of a Maven 2 repository (either on the - local file system or via HTTP) through JCR. + + Maven 2 Repository Connector + - Access and expose the contents of a Maven 2 repository (= either on the local file system or via HTTP) through + JCR. + - JDBC Metadata Connector - Connect to relational databa= ses via JDBC and expose their schema as content in a - repository. + + JDBC Metadata Connector + - Connect to relational databases via JDBC and expose thei= r schema as content in a repository. + - UDDI Connector - Interact with UDDI registries to inte= grate their content into a repository. + + UDDI Connector + - Interact with UDDI registries to integrate their content= into a repository. + - SVN Connector - Interact with Subversion software configur= ation management (SCM) repositories to expose the - managed resources through JCR. Consider using + SVN Connector + - Interact with Subversion software configuration manageme= nt (SCM) repositories to expose the managed resources + through JCR. Consider using SVNkit (dual license) library for API into Subversion. - CVS Connector - Interact with CVS software configurati= on management (SCM) repositories, to expose the - managed resources through JCR. + + CVS Connector + - Interact with CVS software configuration management (SCM= ) repositories, to expose the managed resources through + JCR. + - JDBC Storage Connector - Store and access information = in a relational database. Also useful for persisting - information in the federated repository not stored elsewhe= re. + + JDBC Storage Connector + - Store and access information in a relational database. A= lso useful for persisting information in the federated + repository not stored elsewhere. + - Distributed Database Connector - Store and access informat= ion in a + Distributed Database Connector + - Store and access information in a Hypertable or HBase @@ -535,7 +696,7 @@ Future directions What's next for JBoss DNA? Well, sequencers are just the beginnin= g. = - Remember our architecture? + Remember our architecture? There are a lot of components on our roadmap, including federating = --===============1327535115491864143==--