Funktion
Die ASSIGN-Klausel stellt die Verbindung zwischen dem Dateisteuereintrag und einer Datei her. Die Datei kann einer physikalischen Datei zugeordnet werden oder im Speicher liegen.
Format
ASSIGN { TO { literal-1
| DATA datenname-1
| datenname-2 LENGTH IS datenname-3 [FOR {ALPHANUMERIC | NATIONAL}]
}
| USING datenname-4
}
Syntaxregeln
literal-1 muss ein alphanumerisches Literal sein und darf keine figurative Konstante sein.
datenname-1 muss ein alphanumerisches oder nationales Datenfeld sein.
datenname-2 muss ein Datenelement der Kategorie datenzeiger sein.
datenname-3 muss ein ganzzahliges, vorzeichenloses Datenelement sein, dessen Definition kein Maskenzeichen 'P' enthält.
datenname-1, datenname-2 und datenname-3 dürfen nicht in einer Datensatzerklärung einer XML-organisierten Datei definiert sein.
datenname-4 muss ein alphanumerisches Datenfeld sein und darf nicht innerhalb der FILE SECTION definiert sein.
Die DATA- bzw. LENGTH-Angabe darf nicht gemacht werden, wenn in der zugehörigen SELECT-Klausel OPTIONAL angegeben ist.
Wenn weder ALPHANUMERIC noch NATIONAL angegeben ist, wird ALPHANUMERIC angenommen.
Allgemeine Regeln
Wenn literal-1 oder datenname-4 angegeben ist, steht das XML-Dokument in einer physikalischen Datei. Andernfalls steht das XML-Dokument im Speicher.
literal-1 oder der Inhalt von datenname-4 gibt den Linknamen für die Datei an. Bei literal-1 werden nur die ersten 8Zeichen verwendet. Wenn das achte Zeichen ein Bindestrich (-) ist, wird dieser durch das Nummernzeichen (#) ersetzt.
Ein XML-Dokument im Speicher wird zugewiesen
direkt durch das Datenfeld mit datenname-1, das das XML-Dokument enthält.
indirekt durch ein Zeigerdatenfeld datenname-2, das auf einen Speicherbereich zeigt, der das XML-Dokument enthält. In diesem Fall gibt datenname-3 die Länge des Speicherbereichs in Zeichen an.
Die FOR-Angabe legt die Interpretation des Speicherbereichs, der das XML-Dokument enthält, als alphanumerische oder als nationale Zeichen fest.
Adresse und Länge des Speicherbereichs, der das XML-Dokument enthält, werden bei der OPEN-Anweisung ausgewertet. Der Inhalt des Speicherbereichs wird erst bei der OPEN DOCUMENT-Anweisung ausgewertet. Zeitlich nachfolgende Änderungen haben keinen Einfluss mehr auf die ausgewertete Adresse und Länge bzw. den Inhalt.