home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / rfc / rfc1691 < prev    next >
Text File  |  1994-08-16  |  20KB  |  564 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                          W. Turner
  8. Request for Comments: 1691                                           LTD
  9. Category: Informational                                      August 1994
  10.  
  11.  
  12.        The Document Architecture for the Cornell Digital Library
  13.  
  14. Status of this Memo
  15.  
  16.    This memo provides information for the Internet community.  This memo
  17.    does not specify an Internet standard of any kind.  Distribution of
  18.    this memo is unlimited.
  19.  
  20. Abstract
  21.  
  22.    This memo defines an architecture for the storage and retrieval of
  23.    the digital representations for books, journals, photographic images,
  24.    etc., which are collected in a large organized digital library.
  25.  
  26.    Two unique features of this architecture are the ability to generate
  27.    reference documents and the ability to create multiple views of a
  28.    document.
  29.  
  30. Introduction
  31.  
  32.    In 1989, Cornell University and Xerox Corporation, with support from
  33.    the Commission on Preservation and Access and later Sun Microsystems,
  34.    embarked on a collaborative project to study and to prototype the
  35.    application of digital technologies for the preservation of library
  36.    material.  During this project, Xerox developed the College Library
  37.    Access and Storage System (CLASS), and Cornell developed software to
  38.    provide network access to the CLASS Digital Library.
  39.  
  40.    Xerox and Cornell University Library staff worked closely together to
  41.    define requirements for storing both low- and high-resolution
  42.    versions of images, so that the low-resolution images could be used
  43.    for browsing over the network and the high-resolution images could be
  44.    used for printing.  In addition, substantial work was done to define
  45.    documents with internal structures that could be navigated.  Xerox
  46.    developed the software to create and store documents, while Cornell
  47.    developed complementary software to allow library users to browse the
  48.    documents and request printed copies over the network.
  49.  
  50.    Cornell has defined a document architecture which builds on the
  51.    lessons learned in the CLASS project, and is maintaining digital
  52.    library materials in that form.
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Turner                                                          [Page 1]
  59.  
  60. RFC 1691               CDL Document Architecture             August 1994
  61.  
  62.  
  63. Document Architecture Overview
  64.  
  65.    Just as a conventional library contains books rather than pages, so
  66.    the electronic library must contain documents rather than images.
  67.    During the scanning process, images are automatically linked into
  68.    documents by creating document structure files which order the image
  69.    files in the same way the binding of a book orders the pages.  Thus,
  70.    the digital book as currently configured consists of two parts: a set
  71.    of individual pages stored as discrete bit map image files, and the
  72.    document structure files which "bind" the image files into a
  73.    document.  In addition, a database entry is made for each digital
  74.    document which permits searching by author and title (i.e.,
  75.    bibliographic information).  Beyond the order of the pages, the
  76.    arrangement of a physical book provides information to readers.  The
  77.    title page and publication information come first; the table of
  78.    contents usually precedes the text; the text is divided into sections
  79.    or chapters; if there is an index, it follows the text.  The reader
  80.    often refers to these components of a book when browsing the library
  81.    shelves, in order to determine whether to read the book.
  82.  
  83.    The document structure provides direct access to the components of an
  84.    electronic document, storing the information that would otherwise be
  85.    lost when the book is disbound for scanning.
  86.  
  87. Document Architecture Requirements
  88.  
  89.    Listed below are the requirements that were initially set down for
  90.    the Cornell Digital Library Architecture.
  91.  
  92.    1. The architecture must be open (i.e., published and freely
  93.       available).
  94.  
  95.    2. The architecture should be as simple as possible (to facilitate
  96.       product development).
  97.  
  98.    3. The architecture should assume data storage in UNIX file systems.
  99.  
  100.    4. The architecture should allow for standard data usage, such as via
  101.       FTP and Gopher servers (i.e., pages of a document must exist in a
  102.       single directory, and the naming convention used must order them
  103.       in the standard collating sequence, such as the series "0001.TIF,
  104.       0002.TIF,..., 0411.TIF" (NOTE: a series such as "1.TIF, 2.TIF,...,
  105.       10.TIF" would be ordered "1.TIF, 10.TIF, 2.TIF, ..." which is not
  106.       acceptable).
  107.  
  108.    5. The architecture should provide for storing the same information
  109.       in different formats.  For example, when a page of a document is
  110.       available at several different resolutions.
  111.  
  112.  
  113.  
  114. Turner                                                          [Page 2]
  115.  
  116. RFC 1691               CDL Document Architecture             August 1994
  117.  
  118.  
  119.    6. Low-resolution "thumbnail" images of each page must be stored to
  120.       facilitate browsing and sharing of data.
  121.  
  122.    7. The architecture must support distribution of files so that
  123.       similar files may be stored together, permitting optimization of
  124.       storage use and performance.
  125.  
  126.    8. The architecture must support documents that are composed of
  127.       references to all or part of other documents.
  128.  
  129.    9. The architecture must support document components which are
  130.       stored on separate servers distributed across the network.
  131.  
  132.    10. The architecture must support not only an hierarchical structure
  133.        for each document, but the ability to define multiple views of
  134.        each document.
  135.  
  136.    11. The architecture should accept, rather than dictate, directory
  137.        structures in which documents will be stored.  This will permit
  138.        documents created in other ways to be added to the Digital
  139.        Library simply by adding database information rather than by
  140.        copying or moving files.
  141.  
  142. Document Architecture Description
  143.  
  144.    A digital library consists of a Digital Library Server, networked
  145.    storage, and a referencing database.  A single digital library will
  146.    contain one or more collections.  Each collection will contain one or
  147.    more documents.
  148.  
  149.    The referencing database allows searching for documents by author,
  150.    title, and document ID.  In the current implementation, the
  151.    referencing database is a relational SQL database, and each
  152.    collection is  epresented by a table in the database.  It is planned
  153.    to migrate to Z39.50 database searching as the preferred method, as
  154.    this protocol has been established as the standard for library
  155.    applications.
  156.  
  157.    Authorization will be primarily collection-based, although the design
  158.    will permit authorization checking at any level down to the
  159.    individual file.  Notification would come only when the patron
  160.    attempted to open the document or access the particular component.
  161.  
  162.    Each document consists of three components: the logical structure;
  163.    the physical references; and the data files.
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170. Turner                                                          [Page 3]
  171.  
  172. RFC 1691               CDL Document Architecture             August 1994
  173.  
  174.  
  175.    The logical structure is a logical description of the document.
  176.    Conceptually, a document is a tree, with the leaves being the data
  177.    files (pages).  At a minimum, all documents have a logical structure
  178.    which lists the pages in the document and the order in which they
  179.    appear.  Usually, documents will have a more elaborate structure.
  180.    The logical structure relates the logical structure of a document to
  181.    the physical references which make up the document.
  182.  
  183.    These physical references map the lowest levels of the document's
  184.    logical structure (the leaves of the tree) to the files that contain
  185.    the data.  Where there are multiple representations of a page, such
  186.    as images at various resolutions, these are linked together in the
  187.    physical references file.
  188.  
  189.    The data files contain the data making up a document.  Any format can
  190.    be accommodated: image files, ASCII text, PostScript, etc.  However,
  191.    one-to-one correspondence between data files for a given physical
  192.    reference is assumed.  That is, if there are multiple file types for
  193.    a single page, these files should represent exactly the same
  194.    information.
  195.  
  196. Physical References File
  197.  
  198.    The Physical References file is the component of the document which
  199.    relates logical structures (logical components of documents) to
  200.    physical files.  Document references, by which a document can be
  201.    composed of all or part of other documents possibly residing on
  202.    different servers, are handled in the Physical References file.
  203.  
  204.    A document may contain multiple document objects, each of which
  205.    contains one or more data objects.  When a document contains actual
  206.    physical data (for example, it is created by scanning or importing
  207.    images), a Master Document Object is created.  When a document
  208.    incorporates components of other documents, a Reference Document
  209.    Object is created for each of the other documents.  The Document
  210.    Objects are numbered with internal reference numbers, which are
  211.    included in the corresponding Data Object lines.
  212.  
  213.    Data Object lines include the Document Object number, the file
  214.    reference number, and the file type.  The Document Object number
  215.    refers to a Document Object line, from which the library name,
  216.    collection name, and document ID can be retrieved.  The tuple
  217.  
  218.    <libraryID>+<collectionID>+<documentID>+<filetype>+<file reference>
  219.  
  220.    is guaranteed to locate a file.  Each Data Object line refers to a
  221.    single file; where multiple file types of a single document page
  222.    exist, there will be multiple Data Object lines for that page.
  223.  
  224.  
  225.  
  226. Turner                                                          [Page 4]
  227.  
  228. RFC 1691               CDL Document Architecture             August 1994
  229.  
  230.  
  231.    In the file, all Document Object lines will preceed all Data Object
  232.    lines for a given document.  Document Object lines may be either
  233.    grouped together at the beginning of the file, or may immediately
  234.    preceed the first Data Object line for the Document Object. Document
  235.    Object lines will appear in order by Document Object number.  Data
  236.    Object lines will appear in order by sequence number, NOT by Document
  237.    Object number.
  238.  
  239.    The fields in the Physical References file are delimited by vertical
  240.    bars.
  241.  
  242. Document Object Lines
  243.  
  244.    Field   Description                  Comments
  245.    -----   ----------------------       ----------------------------
  246.      1     Document Object number       0 => Master Document Object
  247.                                         1-9 => Reference Document Object
  248.      2     Library name                 Server name
  249.      3     Collection name
  250.      4     Document ID                  8-digit number
  251.      5     Author name
  252.      6     Volume
  253.      7     Title
  254.      8     Edition
  255.  
  256. Data Object Lines
  257.  
  258.    Field   Description                  Comments
  259.    -----   ----------------------       ----------------------------
  260.      1     Document Object number       Corresponds to above
  261.      2     Sequence number
  262.      3     File reference               Reference number used to locate
  263.                                         file in filing system
  264.      4     Physical reference number    Equal to Logical Structure file
  265.      5     File type                    1 = TIFF 600dpi
  266.                                         2 = TIFF thumbnail
  267.                                         3 = ASCII version of page
  268.                                             (i.e., OCR output)
  269.                                         4 = ASCII notes
  270.                                         5 = Other
  271.                                         6 = TIFF 300dpi
  272.      6     Note
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282. Turner                                                          [Page 5]
  283.  
  284. RFC 1691               CDL Document Architecture             August 1994
  285.  
  286.  
  287. Physical References File Example
  288.  
  289. +0|CORNELL|OLINLIB|00000001|Boole, Mary Everest||Philosophy Of Algebra||
  290.  
  291. |0|1|00000002|5|1||   (File ref. #2 = Phys. ref. #5 = 600dpi TIFF image)
  292. |0|2|00000003|5|2||   (File ref. #3 = Phys. ref. #5 = 100dpi TIFF image)
  293. |0|3|00000004|6|1||   (File ref. #4 = Phys. ref. #6 = 600dpi TIFF image)
  294. |0|4|00000005|6|2||   (File ref. #5 = Phys. ref. #6 = 100dpi TIFF image)
  295.  
  296.    Note that in the above, it is guaranteed that file references 2 and 3
  297.    are two different versions of the same page, as are file references 4
  298.    and 5.
  299.  
  300. Logical Structure File
  301.  
  302.    The Logical Structure file is the component of the document structure
  303.    which offers "views" of a document and links images together
  304.    logically to define documents. The file is actually an unloaded tree;
  305.    when a document is "opened", the file is read and the tree
  306.    reconstructed. By convention, all Logical Structure files contain one
  307.    logical structure "PAGES" which defines the document by listing the
  308.    pages in the order in which they appeared in the original document.
  309.  
  310. Document Structure lines
  311.  
  312.    Field   Description                  Comments
  313.    -----   ----------------------       ----------------------------
  314.      1     Parent structure number      Structure is a child of...
  315.      2     Sequence number
  316.      3     Logical Structure name       Label for this structure
  317.      4     Structure number             Equal to Physical Reference file
  318.      5     Logical Children             # of logical children of this
  319.                                           structure
  320. Document Structure lines (continued)
  321.  
  322.    Field   Description                  Comments
  323.    -----   ----------------------       ----------------------------
  324.      6     Physical Children            # of physical children of this
  325.                                           structure
  326.      7     References                   # of references to this
  327.                                           structure within this document
  328.                                         (for how many structures is this
  329.                                          a substructure)
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338. Turner                                                          [Page 6]
  339.  
  340. RFC 1691               CDL Document Architecture             August 1994
  341.  
  342.  
  343. Logical Structure File Example
  344.  
  345. |0|0|ROOT|0|4|0|0|            Structure 0, ROOT, has 4 logical children
  346. |0|1|PAGES|1|100|0|1|         Str. 1, PAGES, has 100 logical children
  347. |0|2|CONTENTS|2|22|0|1|       Str. 2, CONTENTS, has 22 logical children
  348.                               ...has no physical children
  349.  ...
  350. |1|1|Production note|5|0|2|2| Str. 5 is child of structure 1
  351.                               ...has a label "Production note"
  352.                               ...has no logical children
  353.                               ...has 2 physical references
  354.                               ...is referenced twice in this document
  355. |1|2||6|0|2|1|                Str. 6 has no label
  356. |1|3||7|0|2|1|                Str. 7 has 2 physical references
  357. |1|4||8|0|2|1|                Str. 8 is referenced only here
  358. |1|5||9|0|2|1|                Str. 9 is 5th sequential child of PAGES
  359.  ...
  360. |1|99||103|0|2|2|
  361. |1|100||104|0|2|2|
  362. |2|1|Production note|105|1|0|1|          Str. 105 is a child of str. 2
  363. |2|2|Title page|106|1|0|1|               Str. 106 has 1 logical child
  364. |2|3|Table of contents|107|2|0|1|
  365. |2|4|Chapter 1. From Arithmetic to Algebra|108|6|0|1|
  366. |2|5|Chapter 2. The Making of Algebras|109|4|0|1|
  367. |2|6|Chapter 3. Simultaneous Problems|110|4|0|1|
  368. |2|7|Chapter 4. Partial Solutions...|111|3|0|1|
  369. |2|8|Chapter 5. Mathematical Certainty...|112|3|0|1|
  370. |2|9|Chapter 6. The First Hebrew Algebra|113|8|0|1|
  371. |2|10|Chapter 7. How to Choose our Hypotheses|114|9|0|1|
  372. |2|11|Chapter 8. The Limits of the Teachers Function|115|5|0|1|
  373. |2|12|Chapter 9. The Use of Sewing Cards|116|4|0|1|
  374.  ...
  375. |2|20|Chapter 17. From Bondage to Freedom|124|5|0|1|
  376. |2|21|Appendix|125|2|1|1|
  377. |2|22|advertisements|126|4|1|2|
  378. |105|1|Production note|5|0|2|2|          Str. 5 is a child of str. 105
  379. |106|1|Title page|11|0|2|2|              2nd reference to str. 11
  380. |107|1|7|15|0|2|2|
  381. |107|2|8|16|0|2|2|
  382.  ...
  383. |126|4||104|0|2|2|
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394. Turner                                                          [Page 7]
  395.  
  396. RFC 1691               CDL Document Architecture             August 1994
  397.  
  398.  
  399. Implementation Details
  400.  
  401.    The tuple <library ID>+<collection ID>+<document ID>+<filetype>+
  402.    <file reference> is guaranteed to locate a file.  A file locator
  403.    program will translate between this tuple and the fully-qualified
  404.    path and file name in the underlying file system.  While a library
  405.    will always have a hierarchical nature corresponding to UNIX file
  406.    systems, the order of the hierarchy will be flexible to accommodate
  407.    optimization efforts.  Each level of the hierarchy will have an INFO
  408.    file that describes the order of the lower levels of the hierarchy.
  409.    The file locator program will read these files as it navigates the
  410.    directory structure of the file system when a library, collection, or
  411.    document is opened.  Two examples follow:
  412.  
  413.      Example 1.  Hierarchy is LIBRARY, COLLECTION, DOCUMENT, FILETYPE.
  414.  
  415.   /<library name>
  416.           LIBINFO.TXT                      Description of library
  417.           /<collection name>
  418.                  COLINFO.TXT               Description of collection
  419.                  /<document ID>
  420.                        DOCINFO.TXT         Description of document
  421.                        LOGSTR.000          Logical structure file
  422.                        PHYSREF.000         Physical reference file
  423.                        /<filetype1>
  424.                                00001.TIF
  425.                                00002.TIF
  426.                                ...
  427.                        /<filetype2>
  428.                                00001.TIF
  429.                                00002.TIF
  430.                                ...
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450. Turner                                                          [Page 8]
  451.  
  452. RFC 1691               CDL Document Architecture             August 1994
  453.  
  454.  
  455.    Example 2.  Hierarchy is LIBRARY, FILETYPE, COLLECTION, DOCUMENT.
  456.  
  457.   /<library name>
  458.  
  459.           LIBINFO.TXT                         Description of library
  460.           /<filetype1>
  461.                   /<collection name>
  462.                          COLINFO.TXT          Description of collection
  463.                          /<document ID>
  464.                                DOCINFO.TXT    Description of document
  465.                                LOGSTR.000     Logical structure file
  466.                                PHYSREF.000    Physical reference file
  467.                                00001.TIF
  468.                                00002.TIF
  469.                                ...
  470.           /<filetype2>
  471.                   /<collection name>
  472.                          COLINFO.TXT          Description of collection
  473.                          /<document ID>
  474.                                DOCINFO.TXT    Description of document
  475.                                LOGSTR.000     Logical structure file
  476.                                PHYSREF.000    Physical reference file
  477.                                00001.TIF
  478.                                00002.TIF
  479.                                ....
  480.  
  481.    This implementation involves some redundancy, but it permits complete
  482.    copies of a collection to be mounted on different file systems for
  483.    performance considerations.  In particular, the second scheme would
  484.    facilitate storing all low-resolution images on high-speed magnetic
  485.    disk for fast access, and all high-resolution images on slower, less
  486.    expensive storage.  This will also facilitate authorizing access to
  487.    low-resolution images by other software systems (FTP, Gopher) while
  488.    restricting access to high-resolution images.
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506. Turner                                                          [Page 9]
  507.  
  508. RFC 1691               CDL Document Architecture             August 1994
  509.  
  510.  
  511. Security Considerations
  512.  
  513.    Security issues are not discussed in this memo.
  514.  
  515. References
  516.  
  517.    [1] Turner, W., "Cornell Digital Library Document Architecture,
  518.        Version 1.1 - 3/22/94", Library Technology Department, Cornell
  519.        University.
  520.  
  521. Author's Address
  522.  
  523.        William Turner
  524.        Library Technology
  525.        502 Olin Library
  526.        Cornell University
  527.        Ithaca, NY  14853
  528.  
  529.        Phone: 607-255-9098
  530.        Fax:   607-255-9346
  531.        EMail: wrt1@cornell.edu
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562. Turner                                                         [Page 10]
  563.  
  564.