MARIAN DL Search System
Java Re-Engineering Project
(1998 - )

Re-engineering MARIAN into Java was sponsored by the National Library of Medicine.
This material is based upon work supported by the National Science Foundation under Grant No. 427043.

Documentation on MARIAN

MARIAN Design Narrative (system overview).

MARIAN Detailed Design

Jianxin Zhao's thesis: note chapters 5-7

MARIAN Client / Server Interaction

"MARIAN: Flexible Interoperability for Federated Digital Libraries" (paper submitted to ICDE 2001)

Presentation 6Oct99 "The World According to MARIAN"

Presentation 13Oct99 "MARIAN Searchers (internal structures)"

"MARIAN Sequencers (design discussion)"

Code Analysis

Collection Class Structure Diagrams:
NLM "DirLine": (Directory of Health-Related Organizations" Raw Form, Object-Link Form.
MARC Metadata Record Databases (e.g. VT Library, ETD, ...): Object-Link Form.
(Note that none of these show the Term classes and the OccursIn links that connect them to any of the text fields in the collection objects. For a diagram that shows these, see "The World According to MARIAN" p. 12.)

1999 Project Documents

Robert France
Paul Mather

Searcher Re-Engineering Group
Prajakta Joshi
Surya Ravi Kiran Kodukula
Priyamvadha Lakshminarayanan
Omar Vasnaik

Flexible Federated Searching Group
Filiz Ucar
Nilesh Phadke
Nirmala Tatikonda

Database Person
Aly Badr


For at least the first few weeks on the Fall semester, we will meet weekly, Wednesdays at 2:15.


Written Documents

Search System Design

Programming standards from earlier projects (still worth a look, even though they're not Java). Each is two pages, as that is all the documentation that you can expect programmers to read ;-}.
General Programming Standards
Programming Standards for C



Doc on Javadoc can be found at

MARIAN has now been completely "package"d

Javadoc pages for "common" package (including Weight, FullID, and WtdObj): Tree; Summary.
Javadoc pages for "search" package (including FullIDTable and WtdObjSet): Tree; Summary.
Javadoc pages for WebGate: Tree; Summary.
Javadoc pages for MARIAN server (not including search layer): Tree; Summary.
Javadoc pages for uip (communication package): Tree; Summary.

Java code for the marian packages is also in the package directories:

JDK Documentation

Documentation for JDK 1.1.8 on Digital Unix/Tru64 Unix is available for your perusal. The API reference and Language reference are particularly useful.

1998-99 Project Reports

The scope of Java re-engineering in 1998-99 included WebGate and its helper Formit and the top two layers of the MARIAN pyramid (see above). The NLM DirLine collection was analyzed and installed as a test collection. A desciption of DirLine can be found at the NLM DirLine Fact Sheet; the NLM Specialized Information System maintains an alternative DirLine search system.

Running System

Project homepage

Interim Report to NLM, May 1999 (PDF Version) (Word Version)

DirLine Analysis Report (PDF Version)

Back to DLRL Home Page