Element Type: Edit Page fields
Yes this is correct. The best documentation you can find is the source code, so looking at it is usually the way to go. Craft stores all relations with an array of element ids.

When you have a BaseRelationField in your elements field layout you'll store the value - even if it's a single value - like

$element-&gt;setFieldValue('day', [1]); //&lt;- note, always pass an array


(or the faster variant) 

$fieldsLocation = Craft::$app-&gt;getRequest()-&gt;getParam('fieldsLocation', 'fields');
$element-&gt;setFieldValuesFromRequest($fieldsLocation);


If you don't use a field layout and store your relations in a custom table/column you'll have to find a way that fits your requirements