Because elastic search uses a colon as a special term separator, you can't actually search for anything with a colon in it. You also get an NPE if a colon ends the string you're searching for (if you search if it for whatever reason. I know this was originally created as the "way" to do the add types and values into the elastic search, but wonder if the delimiters should be something different, perhaps similar to the old search. (which was of the form +term:value, and harder to mess up?)
This code is in ElasticSearchService line 263. I'm thinking of changing this back to how the previous search worked (in the format of +<term>:<content>. This would also allow us to search for things like tool and title again like how the previous search worked.