Není možné a možná ani nikdy nebude možné přiřadit cizí klíč vlastnosti json. Byla by to velká a poměrně komplikovaná změna vynucení cizího klíče PostgreSQL. Nemyslím si, že je to nemožné, ale čelil bych podobným problémům jako patch cizích klíčů-polí.
S verzí 9.4 bude možné vytvořit z celého objektu json cizí klíč jako jsonb
podporuje testy rovnosti. Ve verzi 9.3 to ani nemůžete udělat.