Hello Tim,
Thank you for your response. After several attempts to separate the `dc.subject` into independent `dc.subjects` based on the "::" separator, we finally managed to do it by running an SQL query that checks if any `dc.subject` contains the "::" separator. If so, it splits them into independent `dc.subjects` within the same item.
I am attaching a script that should be configured in the crontab to keep checking and adjusting the `dc.subject` fields. Additionally, the script stores the IDs of the items whose `dc.subject` fields have been split and runs a reindexation for each item. (Without reindexing, the filters and facets would still show the unified `dc.subject` with "::". I perform item-level reindexing to avoid executing a full reindexing, which could overload the machine and DSpace.)
I wanted to configure this as a trigger, but it was completely impossible. When creating the item, the trigger wouldn’t start and execute the query, so I ultimately configured it using an SQL query + crontab.
I already have it in production, and it is working correctly. However, I recommend testing it on a test item by adding a new condition to the SQL query.
I hope this is useful for someone.
Many thanks and best regards