In reply to: Christian Amler
                            
                            True ;) You need to know what might be in the collection to remove values. How do you know what you want to remove?
Also there was a typo in my post, it would replace ';;' with ','.
SELECT Replace(Replace('1#value1;44#something;18#another choice','4#something',''),';;',';')
                        
                    
                    
                        
                            Hi everyone,
I'm joining the conversation, also I'm not sure whether there's really something left to do here and the biggest question is, how to determine which element is unwanted. Nevertheless I will leave another approach:
In my case changing the "Without id" value will execute the form rule, which in turn will execute a business rule. The values of "SourceField" and "WithoutId" are passed to the business rule.  The rule, will split the string into a table, "remove" the row with the provided id an merge the result back to a single string.
SQL statement
select STUFF(
  (  
    select ';'+dbo.ClearWFElemId(item)+'#'+ dbo.ClearWFElem(item)
    from dbo.SplitToTable('{BRP:13}',';')
    where dbo.ClearWFElemId(item) <> '{BRP:12}'
    FOR XML PATH('')
  ),1,1,'') as cleanedCollection
Instead of 
 select ';'+dbo.ClearWFElemId(item)+'#'+ dbo.ClearWFElem(item)
This should also work but I haven't tested it
 select ';'+item
This happens when you don't clean up after you have a working  solution. On the other hand, maybe someone  doesn't know either function. So I will leave them there. :)
Best regards,
Daniel