You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: xASL_init_LoadMetadata.m
    path of file: ./repos/ExploreASL/Functions/Initialization
    
    the code of the file until where you have to start completion: function [x] = xASL_init_LoadMetadata(x)
%LoadMetadata Load all study metadata
%
% FORMAT: [x] = xASL_init_LoadMetadata(x)
%
% INPUT:
%   x                   - struct containing pipeline environment parameters, useful when only initializing ExploreASL/debugging
% INPUT FILES:
% participants.tsv      - per BIDS, file in root analysis folder containing
%   
    
function [x] = xASL_init_AddVariable(x, VarName, VarContent, VarOptions, VarSample)
%xASL_init_AddVariable Load, process & add a single variable to memory
%
% VarName       - equal to x.S.SetsName specified in the function header
% VarContent    - equal to x.S.SetsID
% VarOptions    - equal to x.S.SetsOptions
% VarSample     - equal to x.S.Sets1_2Sample


%% ------------------------------------------------------------------------------------------------------------
%% 1) Admin
% A) Max num ordinal options
% B) If subject name are numbers, convert to strings
% C) Remove white spaces from data

% Maximum number of ordinal options. This makes sure that if there are
% more options than this number, and variate was loaded as "ordinal", it
% is set to be "continuous"

MaxNumOrdinalOptions = 15;
IfProcess = 1;

if  size(VarContent,2)<2
    fprintf('%s\n',['Variable ' VarName ' skipped, did not contain data or only subject names']);
    IfProcess= 0; % skip this variable, doesn't contain information
end