It is theoretically possible, but I’d not recommend it.
Extracting references from rich text is a PITA.
References are great for adhoc relations where you don’t need to leverage them elsewhere.
As soon as you want to build upon them (formulas, automations, lookups) they become less useful.
Anything you built might get superseded by genuine polymorphism at some point so your work would be wasted.
For the time being, if you must have links to many dbs, it’s probably better to just use multiple relations and optimise the UX/UI with thoughtful relation views and field hiding.
If you can afford to wait a while, that’s probably going to yield the best result
I, too, wonder if the concept of ‘tags’ wouldn’t accomplish a lot here. Creating a new entity type and then associating it with lots of other entity types (if I understand that’s what’s being suggested) seems a little like overkill for many use cases, if a person could just create some tags that can be applied all over the place in Fibery.
Under the hood, ‘highlights’ is a special kind of database which supports what we call ‘multi-relations’, that is the ability to link to a single entity from any of several databases.
So a highlight has a ‘source’ multi-relation and a ‘target’ multi-relation, and the configuration of highlights determines which dbs are available for each of these.
i.e. Source 1:n Highlight n:1 Target
The result is the ability to link (indirectly) from any source-db entities to any target-db entities.
At the moment, the source dbs have to have a rich text field, because the ‘highlight’ is bound to a specific snippet of text.
On the source entity, the highlight shows as a selected piece of text, and on the target it shows as a feed-view like relation field.
In the long-term, the same underlying tech could allow entities to be linked via multi-relations in a less restricted way.
So you could say, that highlights is a v specific (and limited) form of polymorphism, but we do have plans to make it more powerful… just no ETA
This is great to hear. Still have a huge need for this. More recent use case:
Trying to set up a system for tracking traffic to a range of websites of my clients. Would like to list out in a table in a new db types of user actions on this app. Each of the sites in question has a breakdown in Fibery similar to some of the structures I’ve seen you posting about such as:
Site → Experience Area → Master Feature → Feature
For the purpose of quickly adding in the activity types in the table, which are going to relate ultimately to one of those 4 areas on the site hierarchy, it would be great to have a relation that could draw from any of the options in that hierarchy. Then as these fast entries are made in the table, I could simply choose the “site” at the top level, and come back later as the system is developed and change to a Master Feature or Feature. Without polymorphic, I have to have a relation to “site” at the top level so I can at least enter which of the sites these user actions relate to, then as I build them, have a second relation that will relate to the lower level Master Features or Features that are actually in that Site - so I wind up with a redundancy of relations here.
Hope that was useful and really hoping to see Polymorphic soon! Nobody else out there has solved this, although I did realize in my accounting software I can add a category of expense at an unlimited level of subcategory, all from one field - so possibly unknowingly that vendor has implemented a sort of polymorphic set up that is actually very useful!