You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nlpcraft.apache.org by se...@apache.org on 2021/09/30 09:13:23 UTC

[incubator-nlpcraft] branch NLPCRAFT-384 updated: Sentences validation fix.

This is an automated email from the ASF dual-hosted git repository.

sergeykamov pushed a commit to branch NLPCRAFT-384
in repository https://gitbox.apache.org/repos/asf/incubator-nlpcraft.git


The following commit(s) were added to refs/heads/NLPCRAFT-384 by this push:
     new 2543273  Sentences validation fix.
2543273 is described below

commit 2543273f362478373f36d02dc808790b3d9dd005
Author: Sergey Kamov <sk...@gmail.com>
AuthorDate: Thu Sep 30 12:12:46 2021 +0300

    Sentences validation fix.
---
 .../probe/mgrs/synonyms/NCSynonymsManager.scala    | 36 ++++++++++++----------
 1 file changed, 20 insertions(+), 16 deletions(-)

diff --git a/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/synonyms/NCSynonymsManager.scala b/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/synonyms/NCSynonymsManager.scala
index fa31f26..a7ffd51 100644
--- a/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/synonyms/NCSynonymsManager.scala
+++ b/nlpcraft/src/main/scala/org/apache/nlpcraft/probe/mgrs/synonyms/NCSynonymsManager.scala
@@ -418,22 +418,26 @@ object NCSynonymsManager extends NCService {
                 }
 
                 toks.forall(tok =>
-                    map.get(SavedIdlKey(tok)) match {
-                        case Some(vals) =>
-                            vals.exists(
-                                v =>
-                                    v.variants.exists(winHistVariant =>
-                                        v.predicate.apply(
-                                            tok, NCIdlContext(toks = winHistVariant, req = v.request)
-                                        ).value.asInstanceOf[Boolean] &&
-                                            winHistVariant.map(SavedIdlKey(_)).forall(t =>
-                                                t.id == "nlpcraft:nlp" || allCheckedSenToks.contains(t)
-                                            )
-                                    )
-                            )
-
-                        case None => true
-                    })
+                    if (tok.isUserDefined)
+                        map.get(SavedIdlKey(tok)) match {
+                            case Some(vals) =>
+                                vals.exists(
+                                    v =>
+                                        v.variants.exists(winHistVariant =>
+                                            v.predicate.apply(
+                                                tok, NCIdlContext(toks = winHistVariant, req = v.request)
+                                            ).value.asInstanceOf[Boolean] &&
+                                                winHistVariant.map(SavedIdlKey(_)).forall(t =>
+                                                    t.id == "nlpcraft:nlp" || allCheckedSenToks.contains(t)
+                                                )
+                                        )
+                                )
+
+                            case None => true
+                        }
+                    else
+                        true
+                )
 
             case None => true
         }