Split validation of GraphLinks into pre/post hooks to ensure the right validation occurs at the right time