The following schema describes the JSON data structure for an ISPF
panel display:
{
"PNL":{
"description":"ISPF panel display data and format",
"type":"object",
"properties":{
"VER":{
"description":"ISPF panel JSON version identifier",
"type":"string",
"maxLength":4,
"required":true
},
"NME":{
"description":"Panel name",
"type":"string",
"maxLength":8,
"required":true
},
"SCR":{
"description":"ISPF logical screen identifier",
"type":"string",
"maxLength":1,
"required":true
},
"SCN":{
"description":"Screen name defined for this panel",
"type":"string",
"maxLength":8
},
"HDL":{
"description":"Handle value - used internally by ISPF",
"type":"string",
"maxLength":12,
"required":true
},
"RWS":{
"description":"Panel height - number of rows",
"type":"integer",
"maximum":204,
"required":true
},
"CLS":{
"description":"Panel width - number of columns",
"type":"integer",
"maximum":160,
"required":true
},
"TLE":{
"description":"Panel title",
"type":"string"
},
"EDT":{
"description":"Edit data display indicator",
"type":"string",
"enum":["TRUE"]
},
"CML":{
"description":"Command line location",
"type":"string",
"enum":["BOTTOM","ASIS","NONE"],
"required":true
},
"ALA":{
"description":"Indicates an alarm should sound when the panel is displayed",
"type":"string",
"enum":["TRUE"]
},
"CUR":{
"description":"The cursor location on the panel",
"type":"object",
"required":true,
"properties":{
"ROW":{
"description":"The number of the panel row the cursor is on",
"type":"integer",
"maximum":204,
"required":true
},
"CLM":{
"description":"The number of the panel column the cursor is on",
"type":"integer",
"maximum":160,
"required":true
}
}
},
"SUP":{
"description":"Indicates the current panel display can be scrolled up",
"type":"string",
"enum":["TRUE"]
},
"SDN":{
"description":"Indicates the current panel display can be scrolled down",
"type":"string",
"enum":["TRUE"]
},
"SLF":{
"description":"Indicates the current panel display can be scrolled left",
"type":"string",
"enum":["TRUE"]
},
"SRG":{
"description":"Indicates the current panel display can be scrolled right",
"type":"string",
"enum":["TRUE"]
},
"IFY":{
"description":"Identifiers currently active for this panel display",
"type":"object",
"required":true,
"properties":{
"SYS":{
"description":"The system ID currently displayed with the panel",
"type":"string",
"maxLength":8,
"required":true
},
"UID":{
"description":"The user ID currently displayed with the panel",
"type":"string",
"maxLength":8,
"required":true
},
"PNL":{
"description":"Indicates that the panel name is currently displayed with the panel",
"type":"string",
"enum":["TRUE"]
},
"SCR":{
"description":"Indicates that the screen ID is currently displayed with the panel",
"type":"string",
"enum":["TRUE"]
}
}
},
"MSG":{
"description":"Details of a message displayed with the panel",
"type":"object",
"properties":{
"ID":{
"description":"The message identifier",
"type":"string",
"maxLength":8
},
"TYP":{
"description":"The message type as defined on the TYPE keyword for the message",
"type":"string",
"maxLength":1,
"enum":["N","W","A","C"]
},
"HLP":{
"description":"Indicates there is no help associated with this message
(i.e. no help panel or long message for a short message)",
"type":"string"
},
"LEN":{
"description":"Length of the message text",
"type":"integer"
},
"TXT":{
"description":"The text for the message",
"type":"string",
"maxLength":512
}
}
},
"ARE":{
"description":"The scrollable, dynamic, and table model areas defined for the panel",
"type":"array",
"items":{
"NME":{
"description":"The name used to define to dynamic or scrollable area.
For a table model area this is the table name.",
"type":"string",
"maxLength":8
},
"TYP":{
"description":"The type of area - D=dynamic, S=scrollable, T=table model",
"type":"string",
"maxLength":1,
"enum":["D","S","T"]
},
"TOP":{
"description":"The panel row where the top of this area is located",
"type":"integer"
},
"BOT":{
"description":"The panel row where the bottom of this area is located",
"type":"integer"
},
"LFT":{
"description":"The panel row where the left side of this area is located",
"type":"integer"
},
"RGT":{
"description":"The panel row where the right side of this area is located",
"type":"integer"
}
}
},
"CHA":{
"description":"The color and highlighting defined for the character level attributes
to be used in the dynamic areas for the panel",
"type":"array",
"items":{
"COL":{
"description":"The color assigned for this character level attribute",
"type":"string",
"enum":["AQUA","BLUE","GREEN","PINK","RED","WHITE","YELLOW"]
},
"HIL":{
"description":"The highlighting assigned for this character level attribute",
"type":"string",
"enum":["BLINK","RVIDEO","USCORE"]
}
}
},
"MNU":{
"description":"The action bar choices and pull-down menus for the panel",
"type":"array",
"items":{
"PUL":{
"description":"Pull-down menu description text",
"type":"string"
},
"CHS":{
"description":"The choices for the pull-down menu",
"type":"array",
"items":{
"N":{
"description":"Pull-down choice description text",
"type":"string"
},
"I":{
"description":"An identifier used to indicate when the pull-down choice has
been selected",
"type":"string"
}
}
}
}
},
"FLD":{
"description":"The input, output, point-and-shoot, and text fields displayed on the panel",
"type":"array",
"items":{
"T":{
"description":"The field type - I=input, O=output, P=point-and-shoot, T=text",
"type":"string",
"enum":["I","O","P","T"]
},
"P":{
"description":"Indicates this input field is also a point-and-shoot field",
"type":"string",
"enum":["TRUE"]
},
"Z":{
"description":"Indicates this is the command field for the panel",
"type":"string",
"enum":["TRUE"]
},
"A":{
"description":"The name of the scrollable, dynamic, or table model area
where this field is located",
"type":"string",
"maxLength":8
},
"Y":{
"description":"The panel row where the field is located",
"type":"integer",
"maximum":204
},
"X":{
"description":"The panel column where the field is located",
"type":"integer",
"maximum":160
},
"C":{
"description":"The color of the field",
"type":"string",
"enum":["AQUA","BLUE","GREEN","PINK","RED","WHITE","YELLOW"]
},
"I":{
"description":"The intensity of the field",
"type":"string",
"enum":["HIGH","LOW","NON"]
},
"H":{
"description":"The highlighting for the field",
"type":"string",
"enum":["BLINK","RVIDEO","USCORE"]
},
"L":{
"description":"The length of the field",
"type":"integer"
},
"LX":{
"description":"The total length for a scrollable field",
"type":"integer",
"maximum":32767
},
"N":{
"description":"The name associated with the field",
"type":"string",
"maxLength":14
},
"D":{
"description":"The data for the field",
"type":"string",
"maxLength":32767
},
"SL":{
"description":"Identifies a selection field defined as a check box or radio button",
"type":"object",
"properties":{
"T":{
"description":"Type of selection field - CB=check box, RD=radio button",
"type":"string",
"enum":["CB","RD"]
},
"V":{
"description":"The data value associated with selecting this field",
"type":"string"
},
"N":{
"description":"For a radio button selection, the name of the input field to
be updated with the associated value",
"type":"string",
"maxLength":8
},
"G":{
"description":"For a radio button selection, the group number used to
identify related selection fields",
"type":"integer",
"maximum":99
}
}
},
"SHS":{
"description":"For a field in a dynamic area, identifies the sections of the
field that are highlighted using character level (shadow) attributes",
"type":"array",
"items":{
"STA":{
"description":"The starting position within the field for a set of
characters highlighted by a character level attribute",
"type":"integer"
},
"LEN":{
"description":"The number of characters from the starting position that are
highlighted by the character level attribute",
"type":"integer"
},
"ATT":{
"description":"The number identifying the entry in the \"CHA\" array (see
above) for the character level attribute used to highlight this section of the field",
"type":"integer"
}
}
}
}
},
"KEY":{
"description":"The function keys defined for display with this panel",
"type":"array",
"items":{
"K":{
"description":"The function key identifier",
"type":"string",
"enum":["ENTER","1","2","3","4","5","6","7","8","9","11","12","13","14","15",
"16","17","18","19","20","21","22","23","24"]
},
"N":{
"description":"The label defined for the function key",
"type":"string"
}
}
}
}
}
}