I would add the error handling first.
```
arr := strings.Split(val, ";")
if len(arr) != 2 {
   return "", fmt.Errorf(...)
}
return val, nil
```