A system for configuring an industrial safety relay, comprising: a graphical interface component configured to render one or more graphical function block elements (4302; 4402; 4602; 4702) and to receive configuration input via interaction with the one or more graphical function block elements; and a configuration component configured to generate a configuration program for an industrial safety relay based on the configuration input, wherein a function block element of the one or more graphical function block elements comprises a graphical parameter setting element that facilitates configuration of a parameter associated with the function block element, wherein the function block element comprises a safety monitoring function block element corresponding to a safety device to be monitored via an input terminal of the safety relay, wherein the safety monitoring function block element comprises an input reference container graphic, and the configuration component is further configured to associate a selected input terminal of the safety relay with an input of the safety monitoring function block element in response to selection of the selected input terminal via the input reference container graphic, and wherein the selected input terminal is a multi-purpose terminal of the safety relay, and the configuration component is further configured to automatically configure the multi-purpose terminal as either a safety-rated input or a single-wire safety input based on a type of the safety monitoring function block element to which the multi-purpose terminal is assigned, wherein the multi-purpose terminal is configured as a single-wire safety input if it is assigned to the input of a Single-Wire Safety function block and is configured as a safety-rated normally-closed input or a safety-rated normally open input depending on the particular type of function block to which the multi-purpose terminal is assigned. a graphical interface component configured to render one or more graphical function block elements (4302; 4402; 4602; 4702) and to receive configuration input via interaction with the one or more graphical function block elements; and a configuration component configured to generate a configuration program for an industrial safety relay based on the configuration input, wherein a function block element of the one or more graphical function block elements comprises a graphical parameter setting element that facilitates configuration of a parameter associated with the function block element, wherein the function block element comprises a safety monitoring function block element corresponding to a safety device to be monitored via an input terminal of the safety relay, wherein the safety monitoring function block element comprises an input reference container graphic, and the configuration component is further configured to associate a selected input terminal of the safety relay with an input of the safety monitoring function block element in response to selection of the selected input terminal via the input reference container graphic, and wherein the selected input terminal is a multi-purpose terminal of the safety relay, and the configuration component is further configured to automatically configure the multi-purpose terminal as either a safety-rated input or a single-wire safety input based on a type of the safety monitoring function block element to which the multi-purpose terminal is assigned, wherein the multi-purpose terminal is configured as a single-wire safety input if it is assigned to the input of a Single-Wire Safety function block and is configured as a safety-rated normally-closed input or a safety-rated normally open input depending on the particular type of function block to which the multi-purpose terminal is assigned.