Copyright © 1992, 1997 International Organization for Standardization. All rights reserved.

This electronic document is for use during development and review of International Standards. Official printed copies of International Standards can be purchased from the ISO and the national standards organization of your country.

Next ClausePrevious Clause  

homeParent clauseNext major clausePrevious major clauseNext clause at this level


A.3 Architectural Form Definition Requirements (AFDR)

A.3.1 Enabling architectures

Subclauses:


A document architecture, as that term is defined in ISO 8879, can be "encompassing", governing every aspect of its documents' representation and processing. The document representation requirements for an encompassing architecture are expressed formally -- at least insofar as SGML is capable of expressing them -- in a document type definition (DTD).

A document architecture can also be "enabling", in which case it does not specify complete document types. Instead, an enabling architecture defines rules, known as "architectural forms", that application designers can apply in their document type definitions. These rules, and the associated architectural semantics, are described in an "architecture definition document". The set of formal SGML specifications of the architectural forms, and related declarations for an enabling architecture, comprises a "meta-DTD".

Conceptually, there are two steps to architectural processing. In the first step, generic architectural processing, a generic architecture engine validates a client document against the meta-DTD of its base architectures and, optionally, creates an architectural instance for each base architecture. In the second step, an architecture-specific semantic engine processes both the relevant architectural instances and the client document in order to implement and/or validate architecture-specific semantics.

NOTE 393 In practice, these steps may be combined into a single architecture- or application-specific processor. In other words, an application-specific processor may implement architecture-defined semantics without doing generalized architectural processing.

A.3.1.1 Architectural forms

Architectural forms are rules for creating and processing components of documents, just as document architectures are rules for creating and processing documents. There are four kinds:

element form

This is defined by an element type declaration in conjunction with an attribute definition list declaration. The element type declaration can have a content model that constrains the elements conforming to the form.

attribute form

This is defined solely by an attribute definition list declaration. Its attribute definitions can be used only with designated element forms.

notation form

This is defined by a notation declaration in conjunction with an attribute definition list declaration.

data attribute form

This is defined solely by an attribute definition list declaration for a notation. Its attribute definitions can be used only with data entities conforming to the associated notations.

An element type whose instances conform to an element form defined by, say, the "ArcName" architecture, is informally called an "ArcName element type", even though the element type itself is not defined by the ArcName architecture, but by an application. An instance of such an ArcName element type is called an "ArcName element". An element, notation, data portion, or attribute that does not conform to an architectural form is termed "non-architectural".

An application DTD can include element types of different enabling architectures, element types that conform to no formally-defined architecture (other than the encompassing architecture represented by the DTD itself), and element types that conform to several enabling architectures at once. Where multiple architectures govern a document, the rules of each are enforced without regard to objects that are non-architectural with respect to it.

The enabling architectures that govern a DTD are called its "base" architectures. The DTD is their client and its architecture is said to be "derived" from the base architecture. An enabling architecture can itself be derived from one or more base architectures.

NOTE 394 For example, the full HyTime architecture is derived from the HyBase architecture, which is in turn derived from the General Architecture.

An individual element cannot conform to more than one element type form of a given architecture. It can, however, conform to multiple attribute forms unless prohibited by the rules of the particular architecture.

NOTE 395 A derived architecture is unaware of whether its base architecture is itself a derived architecture. For this reason, an element can conform to the element forms of two base architectures even when one of the architectures is derived from the other.

Most architectural information is conveyed by attributes, which are classified as follows:

architectural attributes

These describe the semantics of the architecture. They are semantically defined in the architectural definition document, declared in the meta-DTD and client DTD or LPD, and specified in the client document instance or LPD.

architecture support attributes

These describe properties of a client document's use of the architecture as a whole, including the names of architecture control attributes (see below). Generic support attributes for all architectures are semantically defined in the AFDR, which provides templates for them. Architecture-specific ones are semantically defined in the architecture definition document, which should also provide templates for them. Support attributes are declared in the client DTD or LPD and specified using the default value parameter of the definitions.

architecture control attributes

These allow architectural parsing and processing to be controlled from the document instance. They are semantically defined in the AFDR, which provides templates for them. Control attributes are declared in the client DTD or LPD, and specified in the client document instance or LPD.

A.3.1.2 Architectural document

For an SGML document and each of its base architectures there exists an "architectural document" that is a derivation of the SGML document. The architectural document for a base architecture consists only of the element types, notations, attributes, and data defined in that base architecture's meta-DTD, as affected by the document's architecture control attributes.

Next ClausePrevious Clause  

Copyright © 1992, 1997 International Organization for Standardization. All rights reserved.

This electronic document is for use during development and review of International Standards. Official printed copies of International Standards can be purchased from the ISO and the national standards organization of your country.


HTML generated from the original SGML source using a DSSSL style specification and the SGML output back-end of the JADE DSSSL engine.