3 declare(strict_types=1);
    14     $ui = $DIC->ui()->factory();
    15     $lng = $DIC->language();
    16     $renderer = $DIC->ui()->renderer();
    17     $request = $DIC->http()->request();
    18     $data = new \ILIAS\Data\Factory();
    22     $sum = 
$refinery->custom()->transformation(
function ($vs) {
    27     $equal_ten = 
$refinery->custom()->constraint(
function ($v) {
    29     }, 
"The sum must equal ten.");
    32     $number_input = $ui->input()->field()->numeric(
"number", 
"Cannot put in a number.")->withValue(5);
    36     $group = $ui->input()->field()->group(
    37         [ $number_input->withLabel(
"Left"), $number_input->withLabel(
"Right")]
    39         ->withAdditionalTransformation($sum)
    40         ->withAdditionalTransformation($equal_ten);
    43     $form = $ui->input()->container()->form()->standard(
'#', [
"custom_group" => $group]);
    46     if ($request->getMethod() == 
"POST") {
    49         $form = $form->withRequest($request);
    50         $group = $form->getInputs()[
"custom_group"];
    51         if ($group->getError()) {
    52             $result = $group->getError();
    55             $result = $form->getData();
    58         $result = 
"No result yet.";
    63         "<pre>" . print_r($result, 
true) . 
"</pre><br/>" .
    64         $renderer->render($form);
 
Refinery Factory $refinery