SGML declaration: default

If you parse an SGML document and do not supply an SGML declaration, the OmniMark SGML parser defaults to the Reference Concrete Syntax. However, OmniMark does not default to the Reference Concrete Syntax values for SGML quantity values such as NAMELEN. Since the most common reason for using an SGML declaration is to raise these quantities to larger values, OmniMark defaults to very large values for all the commonly used quantities. This allows you to process most SGML documents without supplying an SGML declaration.

If you are attempting to validate an SGML document against the Reference Concrete Syntax, you may wish to include the SGML declaration for the Reference Concrete Syntax to validate SGML quantities correctly.

The values affected are:

  • ATTCNT
  • ATTSPLEN
  • BSEQLEN
  • DTAGLEN
  • DTEMPLEN
  • ENTLVL
  • GRPCNT
  • GRPGTCNT
  • GRPLVL
  • LITLEN
  • NAMELEN
  • NORMSEP (OmniMark defaults to zero)
  • PILEN
  • TAGLEN
  • TAGLVL

The default SGML declaration used by OmniMark is:

  <!SGML "ISO 8879:1986"
     CHARSET
        BASESET "ISO 646-1983//CHARSET International Reference Version (IRV)//ESC 2/5 4/0"
        DESCSET
            0   9   UNUSED
            9   2        9
           11   2   UNUSED
           13   1       13
           14  18   UNUSED
           32  95       32
          127   1   UNUSED
  
     CAPACITY   SGMLREF
        ATTCAP     35000 
        ATTCHCAP   35000 
        AVGRPCAP   35000 
        ELEMCAP    35000 
        ENTCAP     35000 
        ENTCHCAP   35000 
        EXGRPCAP   35000 
        EXNMCAP    35000 
        GRPCAP     35000 
        IDCAP      35000 
        IDREFCAP   35000 
        LKNMCAP    35000
        LKSETCAP   35000 
        MAPCAP     35000 
        NOTCAP     35000 
        NOTCHCAP   35000 
        TOTALCAP   35000 
  
     SCOPE DOCUMENT
  
     SYNTAX
        SHUNCHAR CONTROLS
           0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 127 255
  
        BASESET "ISO 646-1983//CHARSET International Reference Version (IRV)//ESC 2/5 4/0"
        DESCSET
           0  128   0
  
        FUNCTION
           RE            13
           RS            10
           SPACE         32
           TAB SEPCHAR    9
  
        NAMING
           LCNMSTRT   ""
           UCNMSTRT   ""
           LCNMCHAR   "-."
           UCNMCHAR   "-."
           NAMECASE   GENERAL YES
                      ENTITY  NO
  
        DELIM
           GENERAL    SGMLREF
           SHORTREF   SGMLREF
  
        NAMES   SGMLREF
  
        QUANTITY    SGMLREF
           ATTCNT      4294967295
           ATTSPLEN    4294967295
           BSEQLEN          32768
           DTAGLEN     4294967295
           DTEMPLEN    4294967295
           ENTLVL      4294967295
           GRPCNT      4294967295
           GRPGTCNT    4294967295
           GRPLVL      4294967295
           LITLEN           32768
           NAMELEN          32768
           NORMSEP              0
           PILEN       4294967295
           TAGLEN      4294967295
           TAGLVL      4294967295
  
     FEATURES
        MINIMIZE
           DATATAG     NO
           OMITTAG    YES
           RANK       YES
           SHORTTAG   YES
  
        LINK
           SIMPLE      NO
           IMPLICIT    NO
           EXPLICIT    NO
  
        OTHER
           CONCUR      NO
           SUBDOC     YES 4294967295
           FORMAL     YES
  
     APPINFO NONE
  >