Freigeben über


GDL-Übung 5: Definieren von Namensgrenzwerten für verschiedene Features

Übung

Definieren Sie mithilfe der Vorlagen aus Übung 4 das *Name: Konstrukt, das in der *POption angezeigt wird, die Teil von *PFeature: InputTray ist, sodass es auf maximal 16 Zeichen beschränkt ist, und den *Name: der innerhalb der *POption angezeigt wird, die Teil von *PFeature: PaperSize ist auf maximal 24 Zeichen beschränkt.

Nehmen Sie diese Änderung vor, ohne die zuvor definierten Vorlagen zu löschen oder zu ändern. Erstellen Sie eine einfache GDL-Datendatei, um die ordnungsgemäße Vorlagenerstellung der Einträge zu überprüfen.

-Projektmappe

Die folgende Vorlage erfüllt die Bedingungen.

*Template:  PAPER_SIZE_OPT_NAME
{
*Name:  "*Name"  *% isolate this branch from base templates
*Inherits: NAME
*MaxLength: 24 chars
}
*Template:  INPUTTRAY_OPT_NAME
{
*Name:  "*Name"  *% isolate this branch from base templates
*Inherits: NAME
*MaxLength: 16 chars
}

*Template:  INPUTTRAY_OPTION2
{
    *Inherits: INPUTTRAY_OPTION
    *Members:  (INPUTTRAY_OPT_NAME)
    *Instances:  <ANY>
}
*Template:  PAPERSIZE_OPTION2
{
    *Inherits: PAPERSIZE_OPTION
    *Members:  (PAPER_SIZE_OPT_NAME)
    *Instances:  <ANY>
}
*PFeature: random
{
*Name:"Generic Feature"
*DefaultOption: First
*POption: First
{
 *Name: "First Option"
 *Command: "Select me"
}
}
*PFeature: PaperSize
{
*Name: "Paper Size"
*DefaultOption: Letter
*POption: Letter
{
 *Name: "Letter"
 *Command: "Select Letter"
 *PaperSize: PAIR(8.5, 11) inches
}
*POption:   Legal
{
 *Name: "Legal"
 *Command: "Select Legal"
 *PaperSize: PAIR(8.5, 14) inches
}
*POption: A4
{
 *Name: "A4"
 *Command: "Select A4"
 *PaperSize: PAIR(205, 317) mm
}
}
*PFeature: InputTray
{
*Name:  "Paper Source"
*DefaultOption: Upper
*POption: Upper
{
 *Name: "Upper Tray"
 *Command:  "Select Upper Tray"
 *Capacity:  2000 sheets
}
*POption: Lower
{
 *Name: "Lower Tray"
 *Command:  "Select Lower Tray"
 *Capacity:  500 sheets
}
}

Hinweis Mithilfe der Vererbung können Sie Variationen für eine Basisklasse weiter verfeinern und ableiten, ohne eine der vorherigen Vorlagen zu ändern oder die Absicht des Schemas zu unterschlagen, das die vorherigen Vorlagen erstellt haben. Dieses Feature ist eine weitere Stärke der Vererbung. Die Vererbung bietet einem Drittanbieter die Möglichkeit, das master Schema zu erweitern, ohne das master Schema zu ändern oder zu verletzen.