ISO/IEC JTC1/WG4 N1963

ISO/IEC JTC1/WG4

Document Description Languages

TITLE: Proposed TC for ISO 8879
SOURCE: U.S. National Body
PROJECT: JTC1.18.15.1
PROJECT EDITOR: Charles F. Goldfarb
STATUS: U.S. National Body Position
ACTION: For approval by WG4
SUMMARY OF MAJOR POINTS: This document clarifies an ambiguity in Annex K of ISO 8879 with respect to implied default declarations when the relevant DTD properties can be specified in a data notation.
DATE: 19 April 1998
DISTRIBUTION: WG4 members
REFER TO: ISO 8879
REPLY TO: Dr. James D. Mason
(ISO/IEC JTC1/WG4 Convenor)
Lockheed Martin Energy Systems
Information Management Services
1060 Commerce Park
Oak Ridge, TN 37830 U.S.A.
Telephone: +1 423 574-6973
Facsimile: +1 423 574-6983
Network: masonjd@ornl.gov
http://www.ornl.gov/sgml/wg4/
ftp://ftp.ornl.gov/pub/sgml/wg4/

ISO 8879 TC 4

Add the following clauses to Annex K.

K.2 Definitions

K.2.5 Definitions related to DTD notations

K.2.5.1 DTD notation:

A data notation that is capable of expressing DTD properties.

Note 1: This International Standard provides markup declarations as the means of expressing DTD properties. It also allows the use of DTD notations, but does not define any.

Note 2: A DTD notation can also be capable of expressing other information. For example, it could express constraints on a document's data content or structure that cannot be expressed by markup declarations but could be validated by an application. However, it is not an SGML error if the document fails to conform to such additional constraints.

Note 3: DTD notations are used in DTD data entities.

K.2.5.2 DTD properties:

Classes and properties that are specifiable by markup declarations. They are defined precisely by the following grove plan:

<!DOCTYPE grovplan PUBLIC "ISO/IEC 10744:1997//DTD Grove

Plan//EN">
<grovplan propset=SGMLProp id=dtdprops>
<title>DTD Properties Grove Plan</title>
<desc>
Classes and properties that are specifiable by DTD declarations. They
are needed to parse and validate a document instance.
</desc>
<inclmod>
prlgabs0 prlgabs1 dtgabs rankabs srabs subdcabs
fpiabs arcabs fsiabs dafeabs gadcabs pelement
</inclmod>
<inclclas>
sgmldoc doctpdcl
</inclclas>
<omitprop classes="sgmldoc">
appinfo epilog
</omitprop>
</grovplan>

K.2.5.3 DTD data entity:

An external parameter entity, or document type declaration external subset entity, whose declaration includes a notation name.

K.4 General

K.4.10 DTD data entities

K.4.10.1 DTD notations

To the extent that an SGML system can recognize properties expressed by DTD notations, it shall treat them identically to DTD properties that are expressed by markup declarations.

It is a reportable markup error if a DTD entity is referenced and its representation of required DTD properties is not understood by the system and it is not permissible to imply default declarations for them.

Note 4: Therefore, when implied default declarations are permitted, the use of a DTD notation that cannot be understood has the same effect as omitting the equivalent markup declarations.

K.4.10.2 External parameter entity (10.5.5)

The declaration of an external parameter entity can include an entity type provided that it also includes the name of a data notation.

K.4.10.3 External subset entity

Production 110 is replaced with:

[110] document type declaration =
mdo, "DOCTYPE", ps+, document type name,
(ps+, external identifier,
(ps+, ("CDATA"|"NDATA"|"SDATA"), ps+, notation name)?)?,
(ps+, dso, document type declaration subset, dsc)?,
ps*, mdc

Note 5: If data attributes are to be specified for a DTD data entity, an external parameter entity must be used rather than an external subset entity.