Hello, I need to query SOLR data using CMIS. I need to look at a combination of node properties and the content. The content of the nodes are XML data and I need to find key/value pairs of certain values.
With AFTS I can succesfully search in content like:
content:"<myTag>hello</myTag>"
In CMIS, you can search in content in the same way using CONTAINS().
So I'm trying to do something like:
SELECT * FROM si:myNodeType WHERE cm:name LIKE 'Some name' AND CONTAINS('<myTag>hello</myTag>')This fails as it seems like the parser is not able to interpret the CONTAINS value literally:
Caused by: NoViableAltException(61@[445:1: ftsTest : ( ( ftsFieldGroupProximity )=> ftsFieldGroupProximity -> ^( PROXIMITY ftsFieldGroupProximity ) | ( ftsRange )=> ftsRange -> ^( RANGE ftsRange ) | ( ftsFieldGroup )=> ftsFieldGroup -> ftsFieldGroup | ( ftsTermOrPhrase )=> ftsTermOrPhrase | ( ftsExactTermOrPhrase )=> ftsExactTermOrPhrase | ( ftsTokenisedTermOrPhrase )=> ftsTokenisedTermOrPhrase | LPAREN ftsDisjunction RPAREN -> ftsDisjunction | template -> template );])
sirene-ass_1 | at org.alfresco.repo.search.impl.parsers.FTSParser$DFA17.specialStateTransition(FTSParser.java:17490)
sirene-ass_1 | at org.antlr.runtime.DFA.predict(DFA.java:80)
sirene-ass_1 | at org.alfresco.repo.search.impl.parsers.FTSParser.ftsTest(FTSParser.java:2691)
If I leave out the tags and just search for 'hello' for instance, content search works fine. How can I force the parser to understand that I want to search for this exact string?