我尝试使用neo4j的新全文搜索(FTS)功能。我的问题是,我想在具有相同标签(例如Post
)和属性(例如post_text
)的节点上使用FTS,但是属性post_text
可以是任何语言。我还可以拥有一个language
属性(或者更好的是像HAS_LANGUAGE
这样的关系)。我希望能够搜索使用检测到的语言编写的帖子(使用某些外部语言检测器),并使用适合于检测到的语言的语言分析器。
在阅读相关的documentation时,我找不到任何方法为具有相同标签但具有不同language
属性的节点使用不同的分析器。那可能吗?
请注意,在我的实际用例中,我对post_text
属性也有唯一性约束,因此我不能为每种语言使用不同的属性(例如en_post_text
,es_post_text
等)
我能想到的唯一解决方法是为每种语言使用不同的标签(例如EnglishPost
,SpanishPost
等),而不是使用language属性和标签Post
。这个解决方案应该运作良好吗?