code: public static JsonObject toJson( SystemInputDef systemInput)
      {
      JsonObjectBuilder builder = Json.createObjectBuilder();
      builder.add( SYSTEM_KEY, systemInput.getName());
  
      addAnnotations( builder, systemInput);
      
      toStream( systemInput.getFunctionInputDefs()).forEach( function -> builder.add( function.getName(), toJson( function)));
  
      return builder.build();
      }
docs: Returns the JSON object that represents the given system input definition.