Skip to main content

EEA Possible Relations. This package provides a flexible way to manage relations in a Plone site. it provides a new reference browser widget and a central management interface for relations, their labels and requirements.

Project description

develop master


EEA Relations package redefines relations in Plone. Right now in Plone any object can be in relation with any other object. EEA Relations lets you to define possible relations between objects. EEA Relations also comes with a nice, customizable faceted navigable popup for relations widget.

Once installed from “Add-ons”, the package will add an utility called “Possible relations” under “Control Panel”.

Main features

Main goal of EEA Relations is to be an alternative to the default Plone related item widget.

EEA Relations features:

  1. Define/restrict what kind of content types a certain content can relate to

  2. Set restrictions on possible relations (e.g. relations can be made only with published content)

  3. You can define easy to use faceted searches (using EEA Faceted navigation) on the relate items popup

  4. Nice visual diagram showning all the relations and restrictions you defined (Control Panel -> Possible relations)

  5. Possibility to automatically publish/retract object’s related items/backward references via Content-Rules.


  • Add eea.relations to your eggs and zcml section in your buildout and re-run buildout.

  • To use eea.relations widget for all default Plone Content-Types you’ll also need to add ‘eea.relations.default’ within zcml section like:

    eggs +=
    zcml +=
  • Install EEA Possible Relations within Site Setup > Add-ons


  • Backup your data.

  • Go to ZMI > PloneSite and remove portal_relations object.

  • Uninstall EEA Possible Relations within Site Setup > Add-ons

  • Remove eea.relations from your eggs and zcml section within your buildout and re-run buildout

  • Restart Zope

Getting started

Once you install the package from “Control Panel Add-ons”, the package will add an utility called “Possible relations” under “Control Panel” from where you can start define the relations, the constraints between contents etc.


EEA Relations has the following dependencies:

  • graphviz

    $ yum install graphviz
    $ apt-get install graphviz
  • pydot

  • eea.facetednavigation

  • collective.js.jqueryui normally installed by eea.facetednavigation. Make sure that you are using the proper version for your plone installation and that the following effects are enabled:

    1. transfer
    2. pulsate


Source code

Latest source code (Plone 4 compatible): - Plone Collective on Github - EEA on Github


EEA - European Environment Agency (EU)


12.3 - (2021-11-19)

  • Bug fix: Fix patched_optimizedGetObject to skip broken brains [avoinea refs #142248]

12.2 - (2021-10-12)

  • Bug fix: Fix @eea.relations RestAPI endpoint title and description [avoinea refs #139536]

12.1 - (2021-09-21)

  • Patch: added patched_getRefs in order to patch retrieval of references for archetypes to skip None values as you can add a reference when logged in for which you cannot access when you are anonymous [ichim-david refs #134485]

  • Change: Modified ContentTypeLookUp so that it gets the right portal factory when adding a new object [iulianpetchesi refs #120841]

12.0 - (2021-09-10)

  • Change: Refs #134485 return dexterity results in forward backward and auto relations [ichim-david refs #134485]

  • Patch: Archetypes reference engine [ichim-david refs #134485]

  • Patch: Archetypes referenceable [ichim-david refs #134485]

11.7 - (2021-03-29)

  • Feature: added the new custom_css property to all facet widgets. [alecghica refs #126549]

11.6 - (2020-11-17)

  • Bug fix: ensure relatedItems reference widget doesn’t crash when its not initialized on a dexterity content type [ichim-david refs #121889]

11.5 - (2020-10-22)

  • Feature: Added dexterity widget for relatedItems [iulianpetchesi #121889]

  • Change: added notoc class to related content header as it shouldn’t appear in the body toc portlet [ichim-david refs #119674]

11.4 - (2020-09-23)

  • Change: Related items now also appear for dexterity objects, not only archetypes [iulianpetchesi #120841]

11.3 - (2020-09-18)

  • Change: use Type for photoALbumEntryType first then portal_type when setting photoAlbumEntryType [ichim-david refs #117296]

11.2 - (2020-06-26)

  • Feature: added draft or archived info within photoAlbumEntry [ichim-david refs #117295]

  • Feature: added photoAlbumEntryType info to related albums for mini header condition [ichim-david refs #117296]

11.1 - (2020-06-22)

  • Change: hide relation information within an accordion and display expired or non published ribbon on photoAlbumEntry entries [ichim-david refs #112068]

11.0 - (2020-02-12)

  • Change: Refs #113376 ensure interface content type is read before a portal type content type [ichim-david]

10.9 - (2020-01-10)

  • Feature: added ability to display a message to logged in users and still show a related title with body for anonymous users in case no relations are added for a given possible relation [ichim-david refs #112068]

10.8 - (2019-08-19)

  • Change: eea_relatedItems relatedItems macro album view now adds background image instead of image tag if image_thumb is not passed as thumb_scale variable [ichim-david refs #106884]

10.7 - (2019-01-28)

  • Jenkins: Add sonarqube step [avoinea refs #101552]

10.6 - (2018-08-27)

  • Change: Get base-url from body data base-url [avoinea refs #97843]

10.5 - (2018-06-20)

  • Change: updated URLs pointing to with https:// [alecghica refs #95849]

10.4 - (2018-05-30)

  • Bug fix: Restrict getBRefs only to related items [avoinea refs #95796]

10.3 - (2018-04-17)

  • Change: removed green gradient from jquery ui [ichim-david refs #91590]

10.2 - (2018-03-14)

  • Change: add reference browser on jQuery dome ready [ichim-david refs #91577]

10.1 - (2017-12-12)

  • Change: Replace eeacms/zptlint with eeacms/plone-test:4 zptlint [avoinea refs #90415]

  • Change: Update tests to work with eea.facetednavigation 10.0+ [avoinea refs #89955]

  • Bug fix: fixed the issue preventing the existing relations being listed under edit. [alecghica refs #78945]

  • Bug fix: fixed the default value for the eea_refs property, [] instead of [‘’] [alecghica refs #78945]

10.0 - (2017-11-07)

  • Change: Remove Sphinx generated documentation [petchesi-iulian refs #88212]

9.9 - (2017-08-16)

  • Bug fix: fixed an exception in queryContentType when the context ended up being plone view method instead of an object [ichim-david refs #85791]

  • Bug fix W3C compliance modifications [valipod refs #86295]

  • Upgrade step: Remove customized views at ZMI > portal_skins/custom: eea_relateditems [valipod refs #86295]

9.8 - (2017-05-22)

  • Change: Add dedicated async quota for relations jobs [avoinea refs #84915]

  • Change: fixed PyLint warnings and errors [valipod refs #84949]

9.7 - (2017-05-15)

  • Change: fixed PyLint warnings and errors [eduard-fironda refs #84949]

9.6 - (2017-04-24)

  • Change: updated package information [eduard-fironda]

9.5 - (2017-02-14)

  • Bug fix: Fix filter_relation_translations [voineali refs #81658]

9.4 - (2016-10-31)

  • Change: check if getFolderContents is present when checking the relation tool types otherwise we get an error within an async operation [ichim-david refs #75296]

9.3 - (2016-10-03)

  • Change: Added dependency to plone.stringinterp 1.0.14+ [avoinea]

9.2 - (2016-09-05)

  • Bug fix: take into consideration that during tests relatedItems might not have access to queue [ichim-david refs #75480]

9.1 - (2016-09-05)

  • Bug fix: Fix Related items URLs within Content-Rules [voineali refs #70758]

9.0 - (2016-08-29)

  • Feature: Added possibility to automatically publish/retract object’s related items and/or backward references via Content-Rules [catalin refs #70758]

8.3 - (2016-05-19)

  • Bug fix: Fix pylint warnings [ichim-david refs #71940]

8.2 - (2016-01-04)

  • Bugfix: removed debugging statements from [ichim-david]

8.1 - (2015-12-07)

  • Change: Added system depenedencies within [voineali refs #27406]

8.0 - (2015-11-09)

  • Fix: Updated objects where new version was created and the eea_refs contains objects instead of uids [szabozo0 refs #30502]

7.9 - (2015-11-06)

  • Fix: Force uids only for eea_refs [szabozo0 refs #30398]

7.8 - (2015-11-05)

  • Bugfix: EEAReferenceField needs a list of uids, so if we receive a list of objects, we get their uids [szabozo0 refs #30398]

7.7 - (2015-11-03)

  • Bugfix: EEAReferenceField needs a list with related objects when setting references and not the object itself in case there is only one reference [ichim-david refs #30288]

  • Bugfix: Customized set and getRaw methods for EEAReferenceField so we can have a diff for relations also [szabozo0 refs #21177]

7.6 - (2015-09-10)

  • Change: documented the required js for eeareferencebrowser.js [ichimdav refs #27220]

7.5 - (2015-08-18)

  • Change: Auto-include zcml within plone context in order to make this package work without having to add it within buildout zcml directive. [avoinea]

  • Change: removed green gradient from popup-selected-items, we now use flat colors [ichimdav refs #27537]

7.4 - (2015-03-17)

  • Change: Switched to curl in the jenkins build install script [olimpiurob refs #22402]

  • Change: Changed fetch url for jenkins build install script to the install script from the main EEA CPB repository [olimpiurob refs #22402]

7.3 - (2015-02-16)

  • Change: cache forward and backward relations on relations macro since they are called also by the auto relations [ichimdav refs #21173]

7.2 - (2015-01-22)

  • Bug fix: Fixed tests [avoinea]

7.1 - (2014-11-20)

  • Change: Refactoring to speedup “broken relations algorithm” within Control Panel [voineali refs #21182]

  • Change: Relations viewlet through Forward relations now searches for valid relationship with an extra check when checking the interfaces before ignoring the added relationship [ichimdav refs #20045]

  • Feature: queryContentType can now search in a reverse fashion for the interface match. See categorizations.txt functional test for details [ichimdav refs #20045]

  • Upgrade step: Within “Plone > Site setup > Add-ons” click on upgrade button available for eea.relations [voineali refs #21182]

  • Feature: Replace graphviz graph.png within Site Setup > Possibile relations with a more scalable visualisation solution based on Dracula JS Graph Library (see: [voineali refs #21182]

7.0 - (2014-08-12)

  • Bug fix: Include i18n translations [avoinea]

6.9 - (2014-07-15)

  • Bug fix: forward and background relations now return only one datatype instead of lists or dicts if the field isn’t found [ichimdav refs #20045]

6.8 - (2014-05-13)

  • Feature: increase the width of the Edit button [mironovi refs #9037]

6.7 - (2014-01-22)

  • Bug fix: removed wrongly added blockquotes within README.rst [ichim-david refs #18064]

  • Change: Documented collective.js.jqueryui dependency within README [olimpiurob #17853]

  • Feature: adding Sphinx-generated documentation in Page Template format [batradav refs #9502]

6.6 - (2013-10-22)

  • Feature: filter forward and backward relations of translations and instead show only the canonical relation if getLanguage is present which is normally present after Products.LinguaPlone is installed [ichim-david refs #16995]

  • Feature: added categorizations.txt functional test for covering the logic of relations macros [ichimdav refs #17059]

  • Change: Merged forward, backward and auto relations within in order to avoid having publicated titles if any of the relations categories had the same title. If they don’t have the same title then the behaviour will be the same as before this change. [ichimdav refs #17059]

  • Bug fix: Fixed permissions for popup-selecteditems view as it asks for login and breaks the edit layout if the user doesn’t have the standard Editor role but she/he can add/edit a document [voineali refs #17010]

  • Bug fix: Fixed i18n attributes for as i18ndude returned an error. [prospchr refs #17141]

6.5 - (2013-10-07)

  • Change: Added the notoc class in order to remove the relations h3 headers from the EEA TOC [ichimdav refs #16929]

6.4 - (2013-09-06)

  • Bug fix: fixed tab behaviour with faceted loading when upgrading to Plone 4.3 [ichim-david fixes #16598]

  • Bug fix: fixed height of tabs on Chrome browser which spanned over two lines because of the required images [ichim-david refs #16598]

  • Change: added small optimizations to relations lookups [ichim-david refs #14863]

6.3 - (2013-08-09)

  • Bug fix: Fixed missing i18n translations. [prospchr refs #15572]

6.2 - (2013-05-20)

  • Upgrade step: Within “Plone > Site setup > Add-ons” click on upgrade button available for eea.relations

  • Bug fix: Use schemaextender to override default relatedItems widget for all Archetypes Content-Types. This fixes the missing macro eeareferencebrowser error when EEA Relations is not installed yet in Site Setup > Add-ons [voineali refs #9486]

  • Feature: Added uninstall profile to easily uninstall eea.relations [voineali refs #9486]

  • Change: load relatedItemsWithThumbs macro only on view template to avoid it from showing up in unwanted places like edit form [ichim-david]

6.1 - (2013-04-17)

  • Upgrade step: Within “Plone > Site setup > Add-ons” click on upgrade button available for eea.relations [ichim-david #13870]

  • Bug fix: fixed issue when the relations div from the relations macro appeared wrongly when the auto relations returned an empty list [ichim-david #13870]

  • Feature: added javascript logic that makes use of the reordering controls [ichim-david #13870]

  • Feature: added controls for reordering of related content [tiberich #13870]

6.0 - (2013-03-15)

  • Bug fix: fixed generation of tabs call when IAutoRelations queryAdapter returns no result [ichimdav]

  • Feature: added information for contributors [ciobabog refs #13892]

5.9 - (2013-02-27)

  • Bug fix: avoid crash for backwards and forward relations when relation is None [ichimdav 13988]

  • Bug fix: sort items in related items macro based on title [tiberich #13870]

5.8 - (2013-02-25)

  • Bug fix: optimize Macro forward and backwards methods calls for similar performance gains like those done in 5.5 [ichimdav #13771]

  • Bug fix: Corrected missing i18n attributes for translations. [prospchr refs #13827]

  • Bug fix: Added domain=eea.notranslation to views that don’t need translations. [prospchr refs #13827]

5.7 - (2013-02-04)

  • Change: optimized relatedItems macro tal definitions and reference listing url in a way that can work without our own extra packages [ichimdav #13677]

5.6 - (2013-01-28)

  • Feature: added related content header to relatedItemsWithThumbs macro [ichimdav #13639]

5.5 - (2013-01-16)

  • Bug fix: Optimize queryContentType component. Now it’s 5 times faster [voineali refs #13590]

5.4 - (2013-01-15)

  • Change: removed i18n information regarding pagination since no code for it is found inside eea.relations [ichimdav]

5.3 - (2013-01-10)

  • Change: relationItems are now rendered by default with an album_view style which can be changed by supplying a template parameter [ichimdav #10182]

  • Change: changed auto relations logic returns False instead of generator when there are no results [ichimdav #10182]

5.2 - (2012-11-22)

  • Feature: added subscriber to update relations once a relation contenttype has been renamed [ichimdav #9547]

  • Feature: added warning of broken relation when viewing the portal_relations, relations and content types pages and continue displaying graph without those broken relations [ichimdav #9547]

5.1 - (2012-11-09)

  • Change: better Zope logging when listing relations that don’t comply portal_relations schema [ghicaale refs #6773]

  • Change: pass context to eeareferencebrowser-popup-selecteditem.html so that eea.daviz knows how to get the context of the field [tiberich refs #9571]

  • Change: added tests and documentation for listing relations that don’t comply portal_relations schema [ghicaale refs #6773]

5.0 - (2012-10-08)

  • Change: use IVideo interface when checking for videos [ichimdav #5480]

  • Feature: Added a listing of all relations that don’t comply portal_relations schema [ghicaale refs #3212]

  • Bug fix: Fix doc tests [voineali]

4.8 - (2012-08-27)

  • Bug fix: correctly set css class for related links to avoid floating issues [ichimdav #5455]

  • Bug fix: show fancybox popup on video click and display view page instead of downloading file [ichimdav #5403]

  • Feature: Trigger event when updating widget is done [szabozo0 refs #5138]

4.7 - (2012-07-13)

  • Bug fix: fixed description error for Sparql related items [ichimdav #4705]

  • Bug fix: Fixed i18n missing tags and i18n:domain in .pt files [prospchr refs #5162]

4.6 - (2012-06-12)

  • Upgrade step: Within “Plone > Site setup > Add-ons” click on upgrade button available for eea.relations

  • Upgrade step: (optional) For each “Plone > portal_relations > <Content-Type>” enable ‘faceted search’ within Actions menu [voineali refs #5218]

  • Bug fix: Fixed generic relations (all to all relations) [voineali fixes #4908]

  • Bug fix: fixed markup of HISTORY.txt file [ciobabog refs #5231]

  • Feature: Use the faceted ‘search mode’ by default for relations content-types in order to speed up the relations popup [voineali refs #5218]

4.5 - (2012-03-30)

  • i18n: Added i18n locales folder, pot files and po files for en and ro [voineali]

  • Change: Update popup look&feel [voineali #4968]

  • Change: remove left and right column for portal_relations admin page [demarant]

  • Feature: possibility to overwrite default thumb scale when show relations [demarant]

  • Bug fix: Fixed view macro under [ghicaale #4998]

  • Change: removed content creation status message in reference popup [tiberich #4982]

4.4 - (2012-03-05)

  • Bug fix: Renamed css file to css.dtml. Use portal_url to anchor images [tiberich #4956]

  • Change: make the @eea.relations.macros generic [tiberich #4982]

4.3 - (2012-02-15)

  • Bug fix: don’t check for thumbs on content types, we always have them [tiberich #4671]

4.2 - (2012-01-03)

  • Bug fix: Fixed permission for related items [voineali #4841]

  • Bug fix: Fixed icons for items in portal_relations tool [voineali #4834]

4.1 - (2011-11-18)

  • Rerelease broken egg

4.0 - (2011-11-18)

  • Feature: added a way to easily override Plone default ATContentTypes widget for relatedItems field. Just add ‘eea.relations.default’ within your zc.buildout include ZCMLs [voineali #4232]

  • Cleanup: fixed all pylint, pyflakes violations [voineali #4232]

  • Feature: added upgrade steps [voineali #4392]

  • Feature: Plone 4.x compatible release [voineali #4232]

0.10 - (2011-03-29)

  • Bug fix: fixed failure if object has no workflow [voineali #4217]

0.9 - (2011-02-18)

  • Changed: replaced thickbox with fancybox [ichimdav #3773]

0.8 - (2010-12-13)

  • Bug fix: fixed jslint warnings [voineali #3821]

0.7 - (2010-11-22)

  • Bug fix: fixed missing end tag found by hudson zptlint [voineali #3821]

0.6 - (2010-11-12)

  • Bug fix: fix failing tests [voineali #3821]

  • Change: added cache metadata to images [ghicaale #3667]

0.5 - (2010-11-05)

  • Bug fix: when exporting GS profile, constrain to string the type titles [tiberich]

0.4 (2010-09-06)

  • Feature: color links in reference widget according to their state. [tiberich #3561]

  • Feature: added default location field to content type entries [tiberich #3544]

0.3 (2010-08-16)

  • Change: set permissions for reference popups to View instead of ModifyContent [tiberich #3525]

0.2 (2010-06-16)

  • Change: changed AutoRelations API to return a list of tabs (labeled brains) [#3298 voineali]

0.1 (2010-06-07)

  • Initial release [voineali]

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution (200.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page