Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Relationships between members

The following means exist for describing temporal and logical interdependencies, i.e. the relationship between the members:

Delta tree

A delta tree is a set of members which is formed by the relationship “member-is-successorof”.

Naming conventions

Within a branch of a delta tree the members have the same name and type. They are differentiated only by their version.

Reference entries

Reference entries are entries in the secondary directory of the library. They occur when the user generates reference records (record type 163) in the form <secondary-name> <secondary-attribute> during writing of a member. The layout of record type 163 is described in the manual “LMS Subroutine Interface” [1 (Related publications)].

The reference entries serve to document the relationship “A particular <secondary-name> and <secondary-attribute> occurs in the member”. Type-based sorting of the reference entries permits the query:

“In which member of type TYPE does a particular reference entry occur?”.

This is implemented by means of the following LMS statement:

//SHOW-ELEMENT-ATTRIBUTES *LIB(*STD,*,TYPE=...,SECONDARY-NAME=..,

                           SECONDARY-ATTRIBUTE=...,)

This relationship is used with modules (type R or L) as the basis for the autolink function (see [5 (Related publications)]); reference entries are for example <name><CSECT> and <name><ENTRY>.

PLAM guarantees the consistency of the relationship; the user is responsible for the generation and integrity of the relationships.

Dependencies on member type

LMS has statements

  • that are independent of the member type (no relation to the member contents) and

  • others that are dependent on the member type.
    In the latter case, only a few standard types are permitted and must be used to derive any user-defined types desired. Members of other types cannot be processed.

The following table shows which member types can be used in the various LMS statements and what type checks LMS performs during the LMS run:

Only if the conditions specified in the Type check column are true, will the relevant statement be executed.



Statement

Member type

Source

Target

Type check

SHOW-ELEMENT

SHOW-ELEMENT-
ATTRIBUTES

DELETE-ELEMENT

MODIFY-ELEMENT-
PROTECTION

FIND-ELEMENT

alphanum-name1..8

-


MODIFY-ELEMENT-
ATTRIBUTES

COPY-ELEMENT

PROVIDE-ELEMENT

RETURN-ELEMENT

alphanum-name1..8


alphanum-name1..8

BT(q)=:=BT(z))

COMPARE-ELEMENT

alphanum-name1..8

alphanum-name1..8

BT(p)=:=BT(s)

EDIT-ELEMENT

S, M, P, D, J, X,
derived type

S, M, P, D, J, X,
derived type


MODIFY-ELEMENT



R, C, L

R, C, L

BT(q)=:=BT(z)

S, M, P, D, J, X,
derived type

S, M, P, D, J, X,
derived type

BT(q)=:=BT(z)

MODIFY-LOGGING-
PARAMETERS

-

S, M, P, D, J, X,
derived type


ADD-ELEMENT

„text“

(I)SAM-f

S, M, P, D, J, X,
derived type


„blocks“

PAM-file

X derived type


„module“

file,*OMF

R


„phase“

PAM-file

C


“link and load modul“

PAM LLM

L


EXTRACT-ELEMENT

S, M, P, D, J, X,
derived type

(I)SAM-file


X derived type

PAM-file


R

(I)SAM-file


C

PAM-file


L

PAM LLM


BT

BT(q)/BT(z)

BT(p)/BT(s)

Standardtyp

Derived type

Base type (name of type of the highest node)

Base type of source/ target member

Base type of the primary or secondary member

One character in length or with $ or SYS at the beginning

Derived from the counted types;
alphanum 2..8 without $ or SYS at the start

=:=

The types to the left and right of this sign are either identical or both are text types.
For type X, text type means that only text members may be involved.