Hi Robert

If you are curious about the Content Repository for Java Technology, than I recommend you start with reading yourself through http://www.jcp.org/en/jsr/detail?id=170 or http://incubator.apache.org/jackrabbit/
From there on you will find a lot of interesting information.

One of the reasons to introduce a Repository (vs. data source) is the fact that in many global organisations you have all sorts of datasources using all sorts of API/protocols to access them. So imagine you as a developer could write something like --> String title = hierarchyNode.getProperty("MyPageTitle"); <-- (where hierarchyNode could be the webPage) and you would not have to worry about WHERE the value for "MyPageTitle" is stored? Your repository takes care of finding the datasource (e.g. filesystem, rdbms, etc.) containing the correct value. Now imagine furthermore, that your piece of data is indexed (for searching), versioned, encrypted, access-controlled, etc. without you having to write any additional code?

Yes, the Content Repository for Java Technology (aka JCR), or actually the API, does exactly that FOR YOU. So as a Developer you develope your jsp/java based applications without worrying about datasources. If for some reason SysAdmin or Management decides to put some/all data into some other sort of datasource, they configure the datasource (through the "Persistence Manager") into the repository; your code does not need any changes. In fact, your code does not even realize that it's getting the content from somewhere else.

The discussion thread you are following is about which underlaying datasource to use. So that means they are discussing about which so called "Persistence Manager" (which communicates to a datasource and stores the data) is best to configure as a standard for Magnolia. And that in fact is a very interesting discussion! It's philosophical (rdbms vs. fs) or technical (performance issues) or both :-)

Just to give you an idea: If the repository manages my content, when do I use a RDBMS and when a FS? Why does Jackrabbit (the Reference Implementation) use a FS? If you think more about a RDBMS: isn't it a "structured" filesystem with it's on Query language (I know, a little provocative :-) )? So imagine again: Why not using SQL syntax on top of a FS? Strange? Well, SQL and XPATH are the search methods for the Content Repository. And, to finish: If the FS is hierarchaly organized and there is a SQL syntax to read content, don't I have something like a "Hierarchical Database"?

Robert, I tried to keep above on a "conceptual" level, so it may sound easier than it technically is. But maybe it helps you understand a little more about the repository concept and why many people think JSR 170 is as revolutionary as the intro of rdmbs was.

/giancarlo


Robert Van Overmeiren wrote:

Is it DB 4.3, DB XML 2.1, or DB Java Edition?

So this is an embedded dbase? Is it like ObjectDB, the embedded JDOQL
dbase?

Its not some sort of ODBC RDBMS is it?

Is it correct to say that the API is not SQL, or JDO, but JCR?

Some big corps use it, Google, Cisco, Amazon, ..., so it must be pretty
good.

Where did this concept of a 'repository' come from?

When I first looked at Magnolia and saw it used a 'repository' with XML
files, I thought, 'Oh the Java guys like to configure things and store
info in XML files, so this 'JSR' standard must be a way to standarize
those practices'.

Now you're attaching it to this JCR implementation and that JCR
implementation, and now a dbase, so I don't know what to think. Of
course, as a user, I don't care, right? Its all transparent.

----------------------------------------------------------------
for list details see
http://www.magnolia.info/en/magnolia/developer.html
----------------------------------------------------------------

Reply via email to