home *** CD-ROM | disk | FTP | other *** search
/ Resource Library: Multimedia / Resource Library: Multimedia.iso / sgml / unix / sgmlh / arcsgml.doc < prev    next >
Encoding:
Text File  |  1991-07-03  |  5.3 KB  |  119 lines

  1.                SGML Users' Group SGML Parser Materials
  2.                              ARCSGML 1.0
  3.  
  4. Please see the License and Disclaimer of Liability in LICENSE.TXT.
  5.  
  6.                              What Is It?
  7.  
  8. ARCSGML is first and foremost something that is being licensed for
  9. free, with no perceptible restrictions on its use or distribution.
  10. That is the good part -- the obverse of the coin is that if no one is
  11. receiving revenue for ARCSGML, no one is going to take responsibility
  12. for it either.  Therefore, as the "License and Disclaimer of
  13. Liability" states, no claims are made for ARCSGML and no person or
  14. organization is responsible if any imagined claims or dreams are
  15. unfulfilled.  The following description should therefore be regarded as
  16. a fantasy.
  17.  
  18.                                Function
  19.  
  20. ARCSGML is a toolkit for use in developing conforming SGML parsers,
  21. systems, and applications.  It supports the reference concrete syntax
  22. and all features except LINK, CONCUR, and SUBDOC (although some hooks
  23. are in place to get you started on these).  It was originally written
  24. to validate the 1983 working draft of the SGML standard, and was
  25. subsequently maintained to track the standard through its final phases
  26. of development, culminating in the amendment.  (See ARCTECH.DOC for
  27. system declaration information.)
  28.  
  29. A parser built with ARCSGML is employed as a coroutine with an
  30. application, called a "text processor (TP)" in the code comments.  All
  31. memory management, I/O, and error handling occur in separate modules
  32. that can be revised to suit individual environments without affecting
  33. the core parser.  Message texts are segregated to facilitate
  34. translation to languages other than English.
  35.  
  36. The application can either interface directly to parser control
  37. blocks, or it can be isolated from them by an application programming
  38. interface (API).  APIs for both C and REXX are included.  (REXX is an
  39. easy-to-use interpreted language with powerful parsing and string
  40. handling functions that are well-suited for converting SGML documents
  41. to other formats -- such as word processor files.)
  42.  
  43. A sample application is included in the form of a markup validator
  44. (VM2).  An optional switch instructs the validator to display the
  45. externals of the SGML parsing process (e.g., current element, current
  46. entity, current short reference map) as an aid to debugging DTDs.
  47. (See VM2HELP.DOC for details.)
  48.  
  49. An annotated list of the package contents can be found in
  50. ARCFILES.DOC.
  51.  
  52.                              Portability
  53.  
  54. ARCSGML was developed entirely on a succession of IBM PC computers
  55. running PC-DOS, but has proven to be portable to other hardware and
  56. software platforms.  Preparation for the SGMLUG distribution of
  57. ARCSGML (ARCSGML 1.0) was done with Borland C++ 2.0 on DOS 4.01
  58. (but only the C compiler of the integrated development environment was
  59. used, not C++).  Microsoft C 5.1 was used on previous versions (command
  60. line compiler only).
  61.  
  62. The code compiles and executes in both the small and large memory
  63. models.
  64.  
  65. The code includes internal trace routines for debugging.
  66. These can be excluded from production versions by defining "FINAL" and
  67. omitting TRACESET from the build.  The distributed executable markup
  68. validator (VM2.EXE) excludes the trace code.
  69.  
  70. More technical details can be found in ARCTECH.DOC.
  71.  
  72.                                Testing
  73.  
  74. Although programs derived from ARCSGML have been tested extensively
  75. with modern SGML test suites, the development of ARCSGML predated the
  76. establishment of test suite guidelines.  The SGMLTEST.EXE archive
  77. includes a number of ad hoc test cases.  Those with filetypes of "VM2"
  78. contain the (presumably) correct VM2 output from the corresponding
  79. files with filetype "SGM".  (Other filetypes are used for entities
  80. that are referenced from *.SGM files, and for additional materials.)
  81.  
  82.                             Documentation
  83.  
  84. The documentation files and the extensively commented source code are
  85. it. (I hope to write more, but don't wait for it!)  That may seem
  86. somewhat daunting, but several successful ports and adaptations of the
  87. code have been made by programmers with whom I have had little contact
  88. (and who didn't even have this file to get them started!).  Most of
  89. their questions tended to be about the SGML language -- all of the
  90. answers I gave them are in The SGML Handbook.
  91.  
  92. Each source code file usually has a description at its start, although if a
  93. file contains many functions, there may be descriptions at the
  94. beginning of each function instead.  In some files, descriptions of
  95. the most recent changes made, or of "TO DO" items, may also occur at
  96. the start.
  97.  
  98. I am not in a position personally to answer questions about ARCSGML.
  99. However, the SGML Project of the University of Exeter is establishing
  100. a clearinghouse for ARCSGML information.  Contact:
  101.  
  102.    Paul Ellison, Director
  103.    The SGML Project
  104.    University of Exeter
  105.    North Park Road
  106.    Exeter EX4 4QE
  107.    United Kingdom
  108.    Phone: +44 392 26 39 46
  109.    E-mail: SGML@EXETER.AC.UK
  110.  
  111. Please send The SGML Project your comments, enhancements, and bug fixes.
  112. (Yes, there is at least one bug, left there in the ancient tradition to
  113. avoid offending the gods by trying to be perfect).
  114.  
  115. Charles F. Goldfarb,
  116. Honorary Technical Advisor, SGMLUG
  117. Saratoga, California
  118. July 3, 1991
  119.