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

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


The following commit(s) were added to refs/heads/NLPCRAFT-513 by this push:
     new 959892c  WIP.
959892c is described below

commit 959892c58b59c8340f0e4e20cc5be19842f11c90
Author: skhdl <[email protected]>
AuthorDate: Sun Oct 23 11:08:09 2022 +0400

    WIP.
---
 api-review.html       | 175 +++++++++++++++++++++++++++++++++++++++++---------
 built-components.html |  77 +++++++++++++---------
 2 files changed, 192 insertions(+), 60 deletions(-)

diff --git a/api-review.html b/api-review.html
index 4aa04d1..2138b8f 100644
--- a/api-review.html
+++ b/api-review.html
@@ -26,18 +26,23 @@ id: overview
         <h2 class="section-title">Library API review <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
 
         <p>
-            NlpCraft library contains two base elements: <code>Model</code> 
and <code>Client</code>.
-            When you work with the system - you should prepare model, 
configuring its parameters and defining its components.
+            NlpCraft library contains two base concepts: <code>Model</code> 
and <code>Client</code> which have API representations
+            <a href="apis/latest/org/apache/nlpcraft/NCModel.html">NCModel</a> 
and
+            <a 
href="apis/latest/org/apache/nlpcraft/NCModelClient.html">NCModelClient</a>.
+            When you work with the system - you should prepare model 
configuring its parameters and defining its components.
             After you just communicate with this model via client's methods.
         </p>
 
         <ul>
             <li>
-                <code>Model</code> is domain specific object which responsible 
for user input interpretation. Model contains intents, defined via NlpCraft IDL 
with related code callbacks. Intent is user defined callback and rule, 
according to which this callback should be called. Rule is most often some 
template, based on expected set of entities in user input, but it can be more 
flexible.
+                <code>Model</code> is domain specific object which responsible 
for user input interpretation.
+                <code>Model</code> contains intents, defined via NlpCraft IDL 
with related code callbacks.
+                Intent is user defined callback and rule, according to which 
this callback should be called.
+                Rule is most often some template, based on expected set of 
entities in user input, but it can be more flexible.
             </li>
 
             <li>
-                <code>Client</code> is object, which allows to communicate 
with given model. Main methods are user input processing and control of 
communication session.
+                <code>Client</code> is object, which allows to communicate 
with the given model.
             </li>
         </ul>
 
@@ -58,7 +63,7 @@ id: overview
         </pre>
 
         <p>
-            Model definition includes two parts:
+            <code>Model</code> definition includes two parts:
         </p>
         <ul>
             <li>
@@ -75,81 +80,132 @@ id: overview
         </p>
         <ul>
             <li>
-                <code>ask</code> - sends user input to the model and receives 
triggered callback result or
-                rejection exception if there isn't any winning intents.
+                <code>ask</code> passes user text input to the model and 
receives back triggered callback method execution result or
+                rejection exception if there isn't any triggered intents.
             </li>
             <li>
-                <code>debugAsk</code>> - sends user input to the model and 
receives callback and its parameters or
-                rejection exception if there isn't any winning intents.
-                Main difference from <code>ask</code> that callback of 
triggered intent is not called.
-                This method can be useful for tests scenarios.
+                <code>debugAsk</code> passes user text input to the model and 
receives back callback and its parameters or
+                rejection exception if there isn't any triggered intents.
+                Main difference from <code>ask</code> that triggered intent 
callback method is not called.
+                This method and this parameter can be useful for tests 
scenarios.
             </li>
             <li>
-                <code>clearStm</code> - clears STM state. Read more .. TODO
+                <code>clearStm</code> clears STM state. Memory is cleared 
wholly or with some predicate.
+                Loot at <a href="short-term-memory.html">Conversation</a> 
chapter to get more details.
             </li>
             <li>
-                <code>clearDialog</code> - clears dialog state. Read more .. 
TODO
+                <code>clearDialog</code> clears dialog state. Dialog is 
cleared wholly or with some predicate.
+                Loot at <a href="short-term-memory.html">Conversation</a> 
chapter to get more details.
             </li>
             <li>
-                <code>close</code> - Closes client.
+                <code>close</code> - Closes client. You can't call another 
client's methods after this method was closed.
             </li>
         </ul>
     </section>
 
     <section id="model-configuration">
         <h2 class="section-title">Model configuration <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
+
+        <p>
+            <code>Model configuration</code> which is represented as is set of 
model parameter values.
+            Its API representation is <a 
href="apis/latest/org/apache/nlpcraft/NCModelConfig.html">NCModelConfig</a>.
+        </p>
+        <ul>
+            <li>
+                <code>id</code>, <code>name</code> and <code>version</code> 
are mandatory model descriptors.
+            </li>
+            <li>
+                <code>description</code> and <code>origin</code> are optional 
model descriptors.
+            </li>
+            <li>
+                <code>conversationTimeout</code> - timeout of the user's 
conversation.
+                If user doesn't communicate with the model this time period 
STM is going to be cleared.
+                Loot at <a href="short-term-memory.html">Conversation</a> 
chapter to get more details.
+                Mandatory parameter with default value.
+            </li>
+            <li>
+                <code>conversationDepth</code> - maximum supported depth the 
user's conversation.
+                Loot at <a href="short-term-memory.html">Conversation</a> 
chapter to get more details.
+                Mandatory parameter with default value.
+            </li>
+        </ul>
     </section>
+
     <section id="model-pipeline">
         <h2 class="section-title">Model pipeline <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
         <p>
-             Before looking at pipeline elements more throughly, let's start 
with terminology.
+             Before looking at <code>Pipeline</code> elements more throughly, 
let's start with terminology.
         </p>
 
         <ul>
             <li>
-                <code>Token</code>. It is simple string, part of user input, 
which split according to some rules, for instance by spaces and some additional 
conditions, which depends on language and some expectations.
+                <code>Token</code> represented as <a  
href="apis/latest/org/apache/nlpcraft/NCToken.html">NCToken</a>.
+                It is simple string, part of user input, which split according 
to some rules, for instance by spaces and some additional conditions, which 
depends on language and some expectations.
                 So user input "<b>Where is it?</b>" contains four tokens: 
"<b>Where</b>", "<b>is</b>", "<b>it</b>", "<b>?</b>".
             </li>
             <li>
-                <code>Entity</code>. According to wikipedia, named entity is a 
real-world object, such as a person, location, organization, product, etc., 
that can be denoted with a proper name. It can be abstract or have a physical 
existence. Each entity can contain one or more tokens.
+                <code>Entity</code> represented as <a  
href="apis/latest/org/apache/nlpcraft/NCEntity.html">NCEntity</a>.
+                According to wikipedia, named entity is a real-world object, 
such as a person, location, organization, product, etc., that can be denoted 
with a proper name. It can be abstract or have a physical existence. Each 
entity can contain one or more tokens.
             </li>
             <li>
-                <code>Variant</code>. List of entities. Potentially, each 
token can be recognized as different entities, so user input can be processed 
as set of variants. For example user input "Mercedes" can be processed as 2 
variants, both of them contains single element list of entities: car brand or 
Spanish family name.
+                <code>Variant</code> represented as <a  
href="apis/latest/org/apache/nlpcraft/NCVariant.html">NCVariant</a>.
+                List of entities. Potentially, each token can be recognized as 
different entities, so user input can be processed as set of variants. For 
example user input "Mercedes" can be processed as 2 variants, both of them 
contains single element list of entities: car brand or Spanish family name.
             </li>
         </ul>
 
         <p>
-            Back to pipeline. Pipeline should be created based in following 
components:
+            Back to <code>Pipeline</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCPipeline.html">pipeline</a>.
+            Pipeline should be created based in following components:
         </p>
         <ul>
             <li>
-                <code>Token parser</code>. Mandatory NLP component, it is 
required for parsing plain text, user input, and split this text into tokens  
list. NlpCraft provides default EN implementation of token parser. Also, 
project contain various examples for FR and RU languages.
+                <code>Token parser</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCTokenParser.html">NCTokenParser</a>.
+                Mandatory pipeline component, it is required for parsing plain 
text, user input, and split this text
+                into tokens  list. NlpCraft provides default EN implementation 
of token parser.
+                Also, project contain various examples for <a 
href="examples/light_switch_fr.html">French</a> and
+                <a href="examples/light_switch_ru.html">Russia</a> languages.
             </li>
             <li>
-                <code>Tokens enrichers</code> optional list. Tokens enricher 
is component which allows to add additional properties to prepared tokens, like 
part of speech, quote, stop-words flags or any other. NlpCraft provides default 
set of EN tokens enrichers implementations.
+                <code>Tokens enrichers</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCTokenEnricher.html">NCTokenEnricher</a> 
optional list.
+                Tokens enricher is component which allows to add additional 
properties to prepared tokens,
+                like part of speech, quote, stop-words flags or any other.
+                NlpCraft provides default set of EN tokens enrichers 
implementations.
             </li>
             <li>
-                <code>Tokens validators</code> optional list. Tokens validator 
is user defined component, where tokens are inspected and exception can be 
thrown from user code to break user input processing.
+                <code>Tokens validators</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCTokenValidator.html">NCTokenValidator</a>
 optional list.
+                Tokens validator is user defined component, where tokens are 
inspected and exception can be thrown
+                from user code to break user input processing.
             </li>
             <li>
-                <code>Entity parsers</code> mandatory list. At least one 
entity parser must be defined. Having prepared tokens as input, each entity 
parser tries to find user defined named entities. NlpCraft provides wrappers 
for named-entity recognition components of OpenNLP and Stanford libraries.
+                <code>Entity parsers</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCEntityParser.html">NCEntityParser</a> 
mandatory list.
+                At least one entity parser must be defined. Having prepared 
tokens as input,
+                each entity parser tries to find user defined named entities.
+                NlpCraft provides wrappers for named-entity recognition 
components of OpenNLP and Stanford libraries.
             </li>
             <li>
-                <code>Entity enrichers</code> optional list. Entity enricher 
is component which allows to add additional properties to prepared entities. 
Can be useful for extending existing entity enrichers functionality.
+                <code>Entity enrichers</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCEntityEnricher.html">NCEntityEnricher</a>
 optional list.
+                Entity enricher is component which allows to add additional 
properties to prepared entities.
+                Can be useful for extending existing entity enrichers 
functionality.
             </li>
             <li>
-                <code>Entity mappers</code> optional list. Entity mapper is 
component which allows to map one set of entities into another after the 
entities were parsed and enriched. Can be useful for building complex parsers 
based on existed.
+                <code>Entity mappers</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCEntityMapper.html">NCEntityMapper</a> 
optional list.
+                Entity mapper is component which allows to map one set of 
entities into another after the entities
+                were parsed and enriched. Can be useful for building complex 
parsers based on existing.
             </li>
             <li>
-                <code>Entity validators</code> optional list. Entities 
validator is user defined component, where prepared entities are inspected and  
exceptions can be thrown from user code to break user input processing.
+                <code>Entity validators</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCEntityValidator.html">NCEntityValidator</a>
 optional list.
+                Entities validator is user defined component, where prepared 
entities are inspected and
+                exceptions can be thrown from user code to break user input 
processing.
             </li>
             <li>
-                <code>Variant filter</code>. Optional component which allows 
filtering detected variants, rejecting undesirable.
+                <code>Variant filter</code> represented as <a 
href="apis/latest/org/apache/nlpcraft/NCVariantFilter.html">NCVariantFilter</a>.
+                Optional component which allows filtering detected variants, 
rejecting undesirable.
             </li>
         </ul>
 
         <p>
-            Below example if <code>Model</code> creation. 
<code>Pipeline</code> is prepared using <code>NCPipelineBuilder</code> class 
helper.
+            Below <code>Model</code> creation example.
+            <code>Pipeline</code> is prepared using 
<code>NCPipelineBuilder</code> class helper.
         </p>
 
         <pre class="brush: scala, highlight: []">
@@ -166,11 +222,71 @@ id: overview
         </pre>
 
         <p>
-            This flexible system allows to create any pipelines on any 
language. You can collect NlpCraft predefined components, write your own and 
easy reuse custom components.
+            This flexible system allows to create any pipelines on any 
language.
+            You can collect NlpCraft predefined components, write your own and 
easy reuse custom components.
         </p>
     </section>
     <section id="model-intents">
         <h2 class="section-title">Model intents and callbacks <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
+
+        <p>
+            Each model class should contain one or more callback methods which 
are mapped on their intents definitions.
+        </p>
+
+        <pre class="brush: scala, highlight: [1, 2, 4, 5]">
+            @NCIntent("intent=ls term(act)={# == 'ls:on'} term(loc)={# == 
'ls:loc'}*")
+            def onMatch(
+                ctx: NCContext,
+                im: NCIntentMatch,
+                @NCIntentTerm("act") act: NCEntity,
+                @NCIntentTerm("loc") locs: List[NCEntity]
+            ): NCResult = NCResult("OK")
+        </pre>
+
+        <ul>
+            <li>
+                <code>Line 1</code> defines intent <code>ls</code> with two 
conditions.
+            </li>
+            <li>
+                <code>Line 2</code> defines related callback method.
+            </li>
+            <li>
+                <code>Lines 4 and 5</code> define two callback method's 
arguments which are corresponded to
+                <code>ls</code> intent conditions.
+            </li>
+        </ul>
+
+        <p>
+            Note that there are a lot of options of defining intents and their 
callback methods.
+            They can be defined in configuration files, nested classes, etc.
+            Look at the chapter <a href="intent-matching.html">Intent 
Matching</a> content for get more details.
+        </p>
+    </section>
+
+    <section id="model-behavior">
+        <h2 class="section-title">Model behavior overriding<a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
+
+        <p>
+            There are also several <a 
href="/apis/latest/org/apache/nlpcraft/NCModel.html">NCModel</a>
+            callbacks that you can override to affect model behavior during
+            <a href="/intent-matching.html#model_callbacks">intent matching</a>
+            to perform logging, debugging, statistic or usage collection, 
explicit update or initialization of
+            conversation context, security audit or validation:
+        </p>
+        <ul>
+            <li>
+                Overriding <code>onMatchedIntent()</code> allows to reject 
matched intent and continue matching process.
+            </li>
+            <li>
+                Overriding <code>onResult()</code> allows to replace callback 
method execution result.
+            </li>
+            <li>
+                Overriding <code>onRejection()</code> allows to change 
operation result when rejection occurs.
+            </li>
+            <li>
+                Overriding  <code>onError()</code> allows to change operation 
result when any error occurs.
+            </li>
+        </ul>
     </section>
 </div>
 <div class="col-md-2 third-column">
@@ -180,6 +296,7 @@ id: overview
         <li><a href="#model-configuration">Model configuration</a></li>
         <li><a href="#model-pipeline">Model pipeline</a></li>
         <li><a href="#model-intents">Model intents and callbacks</a></li>
+        <li><a href="#model-behavior">Model behavior overriding</a></li>
         {% include quick-links.html %}
     </ul>
 </div>
diff --git a/built-components.html b/built-components.html
index a98a9cb..6cef122 100644
--- a/built-components.html
+++ b/built-components.html
@@ -26,7 +26,7 @@ id: overview
         <h2 class="section-title">Built components <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
 
         <p>
-            Model pipeline <code>NCPipeline</code> is base component which 
responsible for sentence processing.
+            Model <a 
href="apis/latest/org/apache/nlpcraft/NCPipeline.html">NCPipeline</a> is base 
component which responsible for sentence processing.
             It is consists of a number of traits, some built implementations 
of them are described below.
         </p>
 
@@ -43,10 +43,11 @@ id: overview
 
         <ul>
             <li>
-                <code>NCTokenParser</code>. There are provided two built 
implementations, both for English language.
+                <a 
href="apis/latest/org/apache/nlpcraft/NCTokenParser.html">NCTokenParser</a>. 
There are provided two built implementations, both for English language.
                 <ul>
                     <li>
-                        <code>NCOpenNLPTokenParser</code>. It is token parser 
implementation which is wrapper on
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParser.html">NCOpenNLPTokenParser</a>.
+                        It is token parser implementation which is wrapper on
                         <a href="https://opennlp.apache.org/";>Apache 
OpenNLP</a> project tokenizer.
                     </li>
                     <li>
@@ -57,10 +58,11 @@ id: overview
             </li>
 
             <li>
-                <code>NCTokenEnricher</code>. There are provided a number of 
built implementations, all of them for English language.
+                <a 
href="apis/latest/org/apache/nlpcraft/NCTokenEnricher.html">NCTokenEnricher</a>.
+                There are provided a number of built implementations, all of 
them for English language.
                 <ul>
                     <li>
-                        <code>NCOpenNLPLemmaPosTokenEnricher</code> -
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.html">NCOpenNLPLemmaPosTokenEnricher</a>
 -
                         this component allows to add <code>lemma</code> and 
<code>pos</code> values to processed token.
                         Look at these links fpr more details: <a 
href="https://www.wikiwand.com/en/Lemma_(morphology)">Lemma</a> and
                         <a 
href="https://www.wikiwand.com/en/Part-of-speech_tagging";>Part of speech</a>.
@@ -72,40 +74,41 @@ id: overview
                         <a 
href="https://opennlp.apache.org/docs/2.0.0/apidocs/opennlp-tools/opennlp/tools/lemmatizer/DictionaryLemmatizer.html";>DictionaryLemmatizer</a>
 components.
                     </li>
                     <li>
-                        <code>NCEnBracketsTokenEnricher</code> -
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnBracketsTokenEnricher.html">NCEnBracketsTokenEnricher</a>
 -
                         this component allows to add <code>brackets</code> 
boolean flag to processed token.
                     </li>
                     <li>
-                        <code>NCEnQuotesTokenEnricher</code> -
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.html">NCEnQuotesTokenEnricher</a>
 -
                         this component allows to add <code>quoted</code> 
boolean flag to processed token.
                     </li>
                     <li>
-                        <code>NCEnDictionaryTokenEnricher</code> -
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.html">NCEnDictionaryTokenEnricher</a>
 -
                         this component allows to add <code>dict</code> boolean 
flag to processed token.
                         Note that it requires already defined 
<code>lemma</code> token property,
-                        You can use 
<code>NCOpenNLPLemmaPosTokenEnricher</code> or any another component which sets
+                        You can use <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.html">NCOpenNLPLemmaPosTokenEnricher</a>
 or any another component which sets
                         <code>lemma</code> into the token.
                     </li>
                     <li>
-                        <code>NCEnStopWordsTokenEnricher</code> -
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.html">NCEnStopWordsTokenEnricher</a>
 -
                         this component allows to add <code>stopword</code> 
boolean flag to processed token.
                         It is based on predefined rules for English language, 
but it can be also extended by custom user word list and excluded list.
                         Note that it requires already defined 
<code>lemma</code> token property,
-                        You can use 
<code>NCOpenNLPLemmaPosTokenEnricher</code> or any another component which sets
+                        You can use <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.html">NCOpenNLPLemmaPosTokenEnricher</a>
 or any another component which sets
                         <code>lemma</code> into the token.
                     </li>
                     <li>
-                        <code>NCEnSwearWordsTokenEnricher</code> -
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnSwearWordsTokenEnricher.html">NCEnSwearWordsTokenEnricher</a>
 -
                         this component allows to add <code>swear</code> 
boolean flag to processed token.
                     </li>
                 </ul>
             </li>
 
             <li>
-                <code>NCEntityParser</code>. There are provided a number of 
built implementations, all of them for English language.
+                <a 
href="apis/latest/org/apache/nlpcraft/NCEntityParser.html">NCEntityParser</a>.
+                There are provided a number of built implementations, all of 
them for English language.
                 <ul>
                     <li>
-                        <code>NCNLPEntityParser</code> converts NLP tokens 
into entities with four mandatory properties:
+                        <a 
href="apis/latest/org/apache/nlpcraft/NCEntityParser.html">NCEntityParser</a> 
converts NLP tokens into entities with four mandatory properties:
                         <code>nlp:token:text</code>, 
<code>nlp:token:index</code>, <code>nlp:token:startCharIndex</code> and
                         <code>nlp:token:endCharIndex</code>. However, if any 
other properties were added into
                         processed tokens by <code>NCTokenEnricher</code> 
components, they will be copied also with names
@@ -113,7 +116,7 @@ id: overview
                         Note that converted tokens set can be restricted by 
predicate.
                     </li>
                     <li>
-                        <code>NCOpenNLPEntityParser</code> is wrapper on <a 
href="https://opennlp.apache.org/";>Apache OpenNLP</a> NER components.
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParser.html">NCOpenNLPTokenParser</a>
 is wrapper on <a href="https://opennlp.apache.org/";>Apache OpenNLP</a> NER 
components.
                         Look at the supported <b>Name Finder</b> models <a 
href="https://opennlp.sourceforge.net/models-1.5/";>here</a>.
                         For example for English language are accessible: 
<code>Location</code>, <code>Money</code>,
                         <code>Person</code>, <code>Organizationon</code>, 
<code>Date</code>, <code>Time</code> and <code>Percentage</code>.
@@ -123,7 +126,7 @@ id: overview
                         Look at the detailed information <a 
href="https://nlp.stanford.edu/software/CRF-NER.shtml";>here</a>.
                     </li>
                     <li>
-                        <code>NCSemanticEntityParser</code> is entity parser 
which is based on list of synonyms elements.
+                        <a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.html">NCSemanticEntityParser</a>
 is entity parser which is based on list of synonyms elements.
                         This component is described with more details below in 
<a href="#semantic">Semantic enrichers</a> section.
                     </li>
                 </ul>
@@ -132,31 +135,43 @@ id: overview
 
         <p>
             Following pipeline components cannot have build implementation 
because their logic are depend on concrete user model:
-            <code>NCTokenValidator</code>, <code>NCEntityEnricher</code>, 
<code>NCEntityValidator</code>,
-            <code>NCEntityMapper</code> and <code>NCVariantFilter</code>.
+            <a 
href="apis/latest/org/apache/nlpcraft/NCTokenValidator.html">NCTokenValidator</a>,
+            <a 
href="apis/latest/org/apache/nlpcraft/NCEntityEnricher.html">NCEntityEnricher</a>,
+            <a 
href="apis/latest/org/apache/nlpcraft/NCEntityValidator.html">NCEntityValidator</a>,
+            <a 
href="apis/latest/org/apache/nlpcraft/NCEntityMapper.html">NCEntityMapper</a> 
and
+            <a 
href="apis/latest/org/apache/nlpcraft/NCVariantFilter.html">NCVariantFilter</a>.
         </p>
 
         <p>
-            <code>NCPipelineBuilder</code> class is designed for simplifying 
preparing <code>NCPipeline</code> instance.
+            <a 
href="apis/latest/org/apache/nlpcraft/NCPipelineBuilder.html">NCPipelineBuilder</a>
 class
+            is designed for simplifying preparing <a 
href="apis/latest/org/apache/nlpcraft/NCPipeline.html">NCPipeline</a> instance.
             It contains a number of methods <code>withSemantic()</code> which 
allow to prepare pipeline instance based on
-            <code>NCSemanticEntityParser</code> and configured language.
+            <a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser">NCSemanticEntityParser</a>
 and configured language.
             Currently only one language is supported - English.
             It also adds following English components into pipeline:
         </p>
 
         <ul>
-            <li><code>NCOpenNLPTokenParser</code></li>
-            <li><code>NCOpenNLPLemmaPosTokenEnricher</code></li>
-            <li><code>NCEnStopWordsTokenEnricher</code></li>
-            <li><code>NCEnSwearWordsTokenEnricher</code></li>
-            <li><code>NCEnQuotesTokenEnricher</code></li>
-            <li><code>NCEnDictionaryTokenEnricher</code></li>
-            <li><code>NCEnBracketsTokenEnricher</code></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCOpenNLPTokenParser.html">NCOpenNLPTokenParser</a></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCOpenNLPLemmaPosTokenEnricher.html">NCOpenNLPLemmaPosTokenEnricher</a></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnStopWordsTokenEnricher.html">NCEnStopWordsTokenEnricher</a></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnSwearWordsTokenEnricher.html">NCEnSwearWordsTokenEnricher</a></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnQuotesTokenEnricher.html">NCEnQuotesTokenEnricher</a></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnDictionaryTokenEnricher.html">NCEnDictionaryTokenEnricher</a></li>
+            <li><a 
href="apis/latest/org/apache/nlpcraft/nlp/enrichers/NCEnBracketsTokenEnricher.html">NCEnBracketsTokenEnricher</a></li>
         </ul>
     </section>
 
     <section id="semantic">
-        <h2 class="section-title">Semantic enrichers <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
+        <h2 class="section-title">Semantic entity parser <a href="#"><i 
class="top-link fas fa-fw fa-angle-double-up"></i></a></h2>
+
+        <p>
+            Semantic entity parser <a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCSemanticEntityParser.html">NCSemanticEntityParser</a>
+            is the implementation of <a 
href="apis/latest/org/apache/nlpcraft/NCEntityParser.html">NCEntityParser</a>
+            which deserves a special mention.
+            It describes list of <a 
href="apis/latest/org/apache/nlpcraft/nlp/parsers/NCSemanticElement.html">NCSemanticElement</a>
+            which are represented <a 
href="https://en.wikipedia.org/wiki/Named-entity_recognition";>Named 
entities</a>.
+        </p>
     </section>
 
     <section id="examples">
@@ -211,11 +226,11 @@ id: overview
                 <code>Line 13</code> defines configured 
<code>NCEnStopWordsTokenEnricher</code> token enricher.
             </li>
             <li>
-                <code>Line 14</code> defines 
<code>NCStanfordNLPEntityParse</code> entity parser based on Stanford NER
+                <code>Line 14</code> defines 
<code>NCStanfordNLPEntityParser</code> entity parser based on Stanford NER
                 configured for number values detection.
             </li>
             <li>
-                <code>Line 14</code> defines 
<code>NCStanfordNLPEntityParse</code> entity parser based on Stanford NER
+                <code>Line 14</code> defines 
<code>NCStanfordNLPEntityParser</code> entity parser based on Stanford NER
                 configured for number values detection.
             </li>
             <li>
@@ -251,7 +266,7 @@ id: overview
     <ul class="side-nav">
         <li class="side-nav-title">On This Page</li>
         <li><a href="#overview">Overview</a></li>
-        <li><a href="#semantic">Semantic enrichers</a></li>
+        <li><a href="#semantic">Semantic entity parsers</a></li>
         <li><a href="#examples">Examples</a></li>
         {% include quick-links.html %}
     </ul>

Reply via email to