class PolicyTag extends AbstractEntityIdWithRevision<PolicyId> {

    public static PolicyTag fromJson(final JsonObject jsonObject) {
        checkNotNull(jsonObject, "JSON object");
        final PolicyId policyId = PolicyId.of(jsonObject.getValueOrThrow(JsonFields.ID));
        final Long revision = jsonObject.getValueOrThrow(JsonFields.REVISION);

        return new PolicyTag(policyId, revision);
    }

    private  PolicyTag(final PolicyId policyId, final long revision);

}