initial take on (extracted from Isis codebase, see https://issues.apache.org/jira/browse/ISIS-807).