External Structure Elements

An External Structure Element is a structure element which is available in the environment of the Presentation Process. External Structure Elements may be included by reference within the structure of an SPDL Instance. An External Structure Element may be a structure element defined by this International Standard or a data structure defined elsewhere (such as a Font Attribute Set as defined by ISO/IEC 9541) which is a valid element of the structure of an SPDL Instance.

An SPDL Instance that includes an External Structure Element by reference must declare it in an EXTERNAL DECLARATION. The EXTERNAL DECLARATION identifies a data element in the environment of the Presentation Process and binds an Identifier to the External Structure Element contained in that data element. The way in which the External Structure Element is obtained from the referenced data element depends on the referenced data element.

An External Structure Element which is declared in an EXTERNAL DECLARATION may be included by reference in an SPDL Instance by placing an EXTERNAL REFERENCE in the SPDL Instance. The EXTERNAL REFERENCE can be placed at any position in the structure of SPDL Instance the within the scope of the binding of the Identifier to the External Structure Element where the External Structure Element could occur. The Structure Processor processes the EXTERNAL REFERENCE structure element by substituting the referenced External Structure Element for the EXTERNAL REFERENCE structure element.

The definitions of structure elements and their subordinates within this International Standard take no further note of the fact that an EXTERNAL REFERENCE may be substituted for any of the structure elements specified.

INCLUDABLE STRUCTURE

An INCLUDABLE STRUCTURE structure element is a structure element which is defined by this International Standard and which can be included in another SPDL Instance by the use of an EXTERNAL REFERENCE structure element. An INCLUDABLE STRUCTURE structure element shall be one of:

EXTERNAL DECLARATION

An EXTERNAL DECLARATION structure element binds an Identifier to an External Structure Element. An EXTERNAL DECLARATION structure element shall be a composite structure element which shall have the following immediate subordinates:

The immediate subordinates shall occur in the above order.

STRUCTURE ELEMENT CLASS IDENTIFIER

A STRUCTURE ELEMENT CLASS IDENTIFIER structure element shall be a base structure element. The type of the value of a STRUCTURE ELEMENT CLASS IDENTIFIER shall be an Enumerated type which identifies the structure element referenced by an EXTERNAL DECLARATION as an element of the specified class. The values of this type and the class of structure elements identified shall be as shown in . ValueClass of Structure Elements pagesetPAGESET structure elements picturePICTURE structure elements picture-bodyPICTURE BODY structure elements non-spdl-picture-bodyNON-SPDL PICTURE BODY structure elements prologuePROLOGUE structure elements informative-declarationINFORMATIVE DECLARATION structure elements hintHINT structure elements context-declarationCONTEXT DECLARATION structure elements resource-definitionRESOURCE DEFINITION structure elements dictionary-specDICTIONARY RESOURCE SPECIFICATION structure elements setup-procedureSETUP PROCEDURE structure elements tokensequenceTOKENSEQUENCE structure elements font-referenceFONT REFERENCE structure elements font-attribute-setFont Attribute Sets as defined by ISO/IEC 9541 font-propertiesFONT PROPERTIES structure elements font-specFONT SPECIFICATION, FONT IDENTIFIER FONT SPECIFICATION, FONT REFERENCE FONT SPECIFICATION, FONTTYPE1 FONT SPECIFICATION, REMAPPED FONT SPECIFICATION, COMPOSITE FONT SPECIFICATION, and USER FONT SPECIFICATION structure elements font-ref-font-specFONT REFERENCE FONT SPECIFICATION structure elements fonttype1-font-specFONTTYPE1 FONT SPECIFICATION structure elements remapped-font-specREMAPPED FONT SPECIFICATION structure elements composite-font-specCOMPOSITE FONT SPECIFICATION structure elements user-font-specUSER FONT SPECIFICATION structure elements glyph-index-map-specGLYPH INDEX MAP SPECIFICATION structure elements gittGLYPH INDEX TRANSLATION TABLE structure elements font-index-mapFONT INDEX MAPstructure elements color-space-specCOLOR SPACE RESOURCE SPECIFICATION structure elements data-source-specDATA SOURCE SPECIFICATION structure elements pattern-specPATTERN RESOURCE SPECIFICATION structure elements form-specFORM RESOURCE SPECIFICATION structure elements dpi-declarationDPI DECLARATION structure elements additional-dpiADDITIONAL DPI structure elements.

STRUCTURE ELEMENT IDENTIFIER

A STRUCTURE ELEMENT IDENTIFIER structure element shall be a base structure element. The value of a STRUCTURE ELEMENT IDENTIFIER shall be of type Name.

EXTERNAL DECLARATION Processing

Processing an EXTERNAL DECLARATION structure element shall consist of binding the value of the STRUCTURE ELEMENT IDENTIFIER to an External Structure Element. The scope of the binding shall be the set of all structure elements in the most immediately superior BLOCK which follow the EXTERNAL DECLARATION in the sequential order and all of their subordinates. The effect of the binding can be overridden by a subsequent EXTERNAL DECLARATION of the same kind in the same BLOCK or in a subordinate BLOCK.

If an EXTERNAL DECLARATION falls within the scope of a preceding EXTERNAL DECLARATION for which the value of the STRUCTURE ELEMENT IDENTIFIER is the same, the binding specified by the later EXTERNAL DECLARATION shall take precedence within its own scope.

The occurrence of an EXTERNAL DECLARATION for which either

does not result in a structure error or warning. A structure error occurs only if the STRUCTURE ELEMENT IDENTIFIER is used in an EXTERNAL REFERENCE to reference the External Structure Element.

LOCATION IDENTIFIER

A LOCATION IDENTIFIER structure element identifies a data element which is either

When used to identify an External Structure Element, the data element identified by the LOCATION IDENTIFIER may be the External Structure Element itself, or it may be a data element containing the External Structure Element or a process which can be used to obtain the External Structure Element. The relationship between the identified data element and the referenced External Structure Element is specified in .

Since the methods by which information objects are identified differ between environments in which the encoding method used is predominantly ASN.1 and those in which the encoding method used is predominantly SGML, the structure of the LOCATION IDENTIFIER depends on the structure representation used. A LOCATION IDENTIFIER structure element shall be one of:

PUBLIC LOCATION IDENTIFIER

A PUBLIC LOCATION IDENTIFIER structure element shall be a base structure element. The value of a PUBLIC LOCATION IDENTIFIER shall be of type Public Object Identifier.

The way in which the Public Object Identifier which is the value of the PUBLIC LOCATION IDENTIFIER identifies a data element in the environment of the Presentation Process is outside of the scope of this International Standard.

LOCAL LOCATION IDENTIFIER

A LOCAL LOCATION IDENTIFIER structure element shall be a base structure element. The value of a LOCAL LOCATION IDENTIFIER shall be of type Octet String.

This value of a LOCAL LOCATION IDENTIFIER structure element identifies a data element in the local syntax. The way in which this value identifies a data element is outside of the scope of this International Standard. The value of a LOCAL LOCATION IDENTIFIER will commonly represent a file name in the local syntax. Since this value consists of private data, some substitution of data may be needed in open interchange. A comment may assist processes or human users in performing this substitution.

ENCODING DEPENDENT LOCATION IDENTIFIER

The ENCODING DEPENDENT LOCATION IDENTIFIER structure element depends on the structure representation used.

When the Binary Structure Representation and Interchange Format is used, an ENCODING DEPENDENT LOCATION IDENTIFIER shall be one of:

When the Clear Text Structure Representation and Interchange Format is used, an ENCODING DEPENDENT LOCATION IDENTIFIER shall be one of:

The way in which the ENCODING DEPENDENT LOCATION IDENTIFIER identifies a data element in the environment of the Presentation Process is outside of the scope of this International Standard.

DOR LOCATION IDENTIFIER

A DOR LOCATION IDENTIFIER structure element shall be a Distinguished Object Reference (DOR) as defined by ISO/IEC 10031-2.

IDENTIFIED SYNTAX LOCATION IDENTIFIER

An IDENTIFIED SYNTAX LOCATION IDENTIFIER structure element shall be an instance of the ASN.1 EXTERNAL type which shall have the following components:

SGML SYSTEM IDENTIFIER

An SGML SYSTEM IDENTIFIER shall be an SGML external identifier as defined by ISO 8879.

SGML ENTITY

An SGML ENTITY shall be an SGML general entity name as defined by ISO 8879. The location specified by this general entity name is given in an SGML entity declaration as part of the SGML document type declaration subset for the document (or SUBDOC) in which the general entity name is used.

Referenced Structure Element Identification

The value of the LOCATION IDENTIFIER may identify the External Structure Element directly, or it may identify a data element containing the External Structure Element or a process which can be used to obtain the External Structure Element. The identification of the External Structure Element which is identified by an EXTERNAL DECLARATION can be considered as a two step process:

If the value of the LOCATION IDENTIFIER identifies the External Structure Element directly, the data element identified in the first step is simply the External Structure Element itself

  • An example of a data structure which contains a structure element would be a file in the local file system. Such a file might contain an SPDL Instance or a data structure containing one or more structure elements.
  • An example of a process which generates a structure element would be a relational data base program which can obtain a structure element from a data base.
  • The data element which is identified by the LOCATION IDENTIFIER may be:

    1. a data element consisting of an INCLUDABLE STRUCTURE structure element in the SPDL Representation and Interchange Format;
    2. a data element consisting of an SPDL Instance in the SPDL Representation and Interchange Format;
    3. a data element consisting of an INCLUDABLE STRUCTURE structure element in a non-standard format;
    4. a process or an intelligent object which can generate an INCLUDABLE STRUCTURE structure element in either the SPDL Representation and Interchange Format or in a non-standard format.

    The External Structure Element referenced in each of these cases shall be:

    1. the structure element represented by the identified data element (in the SPDL Representation and Interchange Format);
    2. the TOP LEVEL STRUCTURE structure element contained in the identified SPDL Instance in the identified data element (in the SPDL Representation and Interchange Format);
    3. the structure element represented by the identified data element (in a format other than the SPDL Representation and Interchange Format, which must processable by the Presentation Process);
    4. the structure element generated by the process or intelligent object which is identified by the LOCATION IDENTIFIER.
    In case b, the process of obtaining the External Structure Element consists of removing the SPDL identification information from the SPDL Instance. The TOP LEVEL STRUCTURE may then be lexically included in the referencing document.

    EXTERNAL REFERENCE

    An EXTERNAL REFERENCE structure element shall be a base structure element. The value of an EXTERNAL REFERENCE shall be of type Name.

    EXTERNAL REFERENCE Processing

    Processing an EXTERNAL REFERENCE structure element shall consist of:

    1. identifying the most immediately superior EXTERNAL DECLARATION which binds the value of the subordinate STRUCTURE ELEMENT IDENTIFIER to an External Structure Element;
    2. obtaining the External Structure Element which is identified by the value of the LOCATION IDENTIFIER subordinate to the EXTERNAL DECLARATION identified in step a, as specified in ;
    3. verifying that the External Structure Element obtained in step b belongs to the class specified by the STRUCTURE ELEMENT CLASS IDENTIFIER subordinate to the EXTERNAL DECLARATION identified in step a;
    4. if the structure element obtained in step b is in the SPDL Representation and Interchange Format, (lexically) replacing the EXTERNAL REFERENCE structure element with the External Structure Element and processing it as specified by this International Standard;
    5. if the structure element obtained in step b is not in the SPDL Representation and Interchange Format, processing it as though the EXTERNAL REFERENCE had been replaced by an equivalent External Structure Element in the SPDL Representation and Interchange Format.

    If any of the above steps fails the Structure Processor shall raise an error.