Extend syntax validation for PURL with supported PURL types new extended validation documented in the PURL specification and the test suite