[From string (line 18) ] @startuml !unquoted function $lookup($id) '!$data = %loadJSON("system.json") !$data={"participants" :[ {"id": "cm" ,"label": "customer master","desc": "manages customers"}, {"id": "tm" ,"label": "transaction manager","desc": "manages transactions"}, {"id": "am" ,"label": "account master","desc": "manages accounts"} ] } !foreach $part in $data.participants !if $part.id == $id :id=$part.id \nlabel=$part.label \ndesc=$part.desc; !endif !endfor !endfunction ^^^^^ This function does not have any !return directive. Declare it as a procedure instead ?