FUNCTION ap-taxid-is-valid RETURNS LOGICAL (INPUT ip-taxid AS CHARACTER) FORWARD. FUNCTION ap-taxid-is-valid RETURNS LOGICAL (INPUT ip-taxid AS CHARACTER): IF LENGTH(ip-taxid) = 10 AND SUBSTRING(ip-taxid,3,1) = "-" AND TRIM(SUBSTRING(ip-taxid,1,2),"0123456789") = "" AND TRIM(SUBSTRING(ip-taxid,4,7),"0123456789") = "" THEN RETURN TRUE. /* EIN */ IF LENGTH(ip-taxid) = 11 AND SUBSTRING(ip-taxid,4,1) = "-" AND SUBSTRING(ip-taxid,7,1) = "-" AND TRIM(SUBSTRING(ip-taxid,1,3),"0123456789") = "" AND TRIM(SUBSTRING(ip-taxid,5,2),"0123456789") = "" AND TRIM(SUBSTRING(ip-taxid,8,4),"0123456789") = "" THEN RETURN TRUE. /* SSN or ITIN */ RETURN FALSE. END FUNCTION. /* ap-taxid-is-valid */