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

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


The following commit(s) were added to refs/heads/master by this push:
     new 26c8aff  WIP.
26c8aff is described below

commit 26c8aff2bab2cf10454e08d2a55c6761b9f3a8ef
Author: Aaron Radzinzski <[email protected]>
AuthorDate: Thu Apr 15 20:32:35 2021 +0300

    WIP.
---
 _config.yml          |   2 -
 intent-matching.html | 195 +++++++++++++++++++++++++--------------------------
 2 files changed, 96 insertions(+), 101 deletions(-)

diff --git a/_config.yml b/_config.yml
index 3ec83c5..ebe15d6 100644
--- a/_config.yml
+++ b/_config.yml
@@ -62,8 +62,6 @@ exclude:
   - apis/javadoc-0.7.2
   - apis/javadoc-0.7.3
   - apis/javadoc-0.7.4
-  - ext
-  - fonts
   - javadoc
   - _site
 
diff --git a/intent-matching.html b/intent-matching.html
index 962d0ec..7d13e5e 100644
--- a/intent-matching.html
+++ b/intent-matching.html
@@ -394,7 +394,7 @@ id: intent_matching
                         fragment(when) // insert terms from fragment 'when'.
                 </pre>
                 <p><b>NOTES:</b></p>
-                <ul>
+                <ul class="recover_bottom_margin">
                     <li>
                         Fragment statements (line 2 and 3) have a name 
(<code>buzz</code> and <code>when</code>) and a list of terms.
                     </li>
@@ -426,7 +426,7 @@ id: intent_matching
                 <p>
                     <b>NOTES:</b>
                 </p>
-                <ul>
+                <ul class="recover_bottom_margin">
                     <li>
                         The effect of importing is the same as if the imported 
declarations were inserted in place of import
                         statement.
@@ -445,6 +445,100 @@ id: intent_matching
                 <p></p>
             </li>
         </ul>
+        <h2 class="section-sub-title">Intent Lifecycle</h2>
+        <p>
+            During NLPCraft data probe start it scans the models provided in 
its configuration for the intents. The
+            scanning process goes through JSON/YAML external configurations as 
well as model classes when looking
+            for IDL intents. All found intents are compiled into an internal 
representation before the data probe
+            completes its start up sequence.
+        </p>
+        <p>
+            Note that not all intents problems can be detected at the 
compilation phase, and probe can start with intents
+            not being completely validated. For example, each term in the 
intent must evaluate to a boolean result. This can
+            only be checked at runtime. Another example is the number and the 
types of parameters passed into IDL function
+            which can only be checked at runtime as well.
+        </p>
+        <p>
+            Intents are compiled only once during the data probe start up 
sequence and cannot be re-compiled
+            without data probe restart. Model logic, however, can affect the 
intent behavior through <a href="/data-model.html#callbacks">model 
callbacks</a>,
+            <a target=_ 
href="/apis/latest/org/apache/nlpcraft/model/NCModelView.html#getMetadata()">model
 metadata</a>,
+            user and company metadata, as well as request data all of which 
can change at runtime and
+            are accessible through IDL functions.
+        </p>
+        <h2 class="section-sub-title">Intent Examples</h2>
+        <p>
+            Here's number of intent examples with explanations:
+        </p>
+        <p>
+            <b>Example 1:</b>
+        </p>
+        <pre class="brush: idl">
+        intent=a
+            term~{tok_id() == 'x:id'}
+            term(nums)~{tok_id() == 'nlpcraft:num' && 
lowercase(meta_tok('nlpcraft:num:unittype')) == 'datetime'}[0,2]
+        </pre>
+        <p><b>NOTES:</b></p>
+        <ul>
+            <li>
+                Intent has ID <code>a</code>.
+            </li>
+            <li>
+                Intent uses default conversational support (<code>true</code>) 
and default order (<code>false</code>).
+            </li>
+            <li>
+                Intent has two conversational terms that have to be found for 
the intent to match. Note that second
+                term is optional as it has <code>[0,2]</code> quantifier.
+            </li>
+            <li>
+                First term matches any single token with ID <code>x:id</code>.
+            </li>
+            <li>
+                Second term can appear zero, once or two times and it matches 
token with ID <code>nlpcraft:num</code> with
+                <code>nlpcraft:num:unittype</code> metadata property equal to 
<code>'datetime'</code> string.
+            </li>
+            <li>
+                IDL function <code>lowercase</code> used on 
<code>nlpcraft:num:unittype</code> metadata property value.
+            </li>
+            <li>
+                Note that since second term has ID (<code>nums</code>) it can 
be references by <code>@NCIntentTerm</code>
+                annotation by the callback formal parameter.
+            </li>
+        </ul>
+        <br/>
+        <p>
+            <b>Example 2:</b>
+        </p>
+        <pre class="brush: idl">
+        intent=id2
+            flow='id1 id2'
+            term={tok_id() == 'mytok' && signum(get(meta_tok('score'), 
'best')) != -1}
+            term={has_all(tok_groups(), list('actors', 'owners')) && 
size(meta_part('partAlias, 'text')) > 10}
+        </pre>
+        <p><b>NOTES:</b></p>
+        <ul>
+            <li>
+                Intent has ID <code>id2</code>.
+            </li>
+            <li>
+                Intent has dialog flow pattern: <code>'id1 id2'</code>. It 
expect sequence of intents <code>id1</code> and
+                <code>id2</code> somewhere in the history of previously 
matched intents in the course of the current conversation.
+            </li>
+            <li>
+                Intent has two non-conversational terms. Both terms have to be 
present only once (their implicit quantifiers are <code>[1,1]</code>).
+            </li>
+            <li>
+                First term should be a token with ID <code>mytok</code> and 
have metadata property <code>score</code> of type
+                map. This map should have a value with the string key 
<code>'best'</code>. <code>signum</code> of this map value
+                should not equal <code>-1</code>. Note that built-in functions 
(i.e. <code>signum</code>) can only be
+                used on the left values.
+            </li>
+            <li>
+                Second term should be a token that belongs to either 
<code>actors</code> or <code>owners</code> group.
+                It should have a part token whose with alias 
<code>partAlias</code>. That
+                part token should have metadata property <code>text</code> of 
type string, list or map. The length of
+                this string, list or map should be greater than 
<code>10</code>.
+            </li>
+        </ul>
         <h2 id="idl_functions" class="section-title">IDL Functions</h2>
         <p>
             IDL provides over 50 built-in functions that can be used in IDL 
intent definitions.
@@ -1159,27 +1253,6 @@ id: intent_matching
                 </pre>
             </li>
         </ul>
-        <h2 class="section-sub-title">Intent Lifecycle</h2>
-        <p>
-            During NLPCraft data probe start it scans the models provided in 
its configuration for the intents. The
-            scanning process goes through JSON/YAML external configurations as 
well as model classes when looking
-            for IDL intents. All found intents are compiled into an internal 
representation before the data probe
-            completes its start up sequence.
-        </p>
-        <p>
-            Note that not all intents problems can be detected at the 
compilation phase, and probe can start with intents
-            not being completely validated. For example, each term in the 
intent must evaluate to a boolean result. This can
-            only be checked at runtime. Another example is the number and the 
types of parameters passed into IDL function
-            which can only be checked at runtime as well.
-        </p>
-        <p>
-            Intents are compiled only once during the data probe start up 
sequence and cannot be re-compiled
-            without data probe restart. Model logic, however, can affect the 
intent behavior through <a href="/data-model.html#callbacks">model 
callbacks</a>,
-            <a target=_ 
href="/apis/latest/org/apache/nlpcraft/model/NCModelView.html#getMetadata()">model
 metadata</a>,
-            user and company metadata, as well as request data all of which 
can change at runtime and
-            are accessible through IDL functions.
-        </p>
-        <h2 id="idl_syntax_highlight" class="section-sub-title">IDL Syntax 
Highlighting</h2>
     </section>
     <section id="binding">
         <h2 class="section-title">Binding Intent</h2>
@@ -1789,82 +1862,6 @@ id: intent_matching
             </tbody>
         </table>
     </section>
-    <section id="examples">
-        <h2 class="section-title">Intent Examples</h2>
-        <p>
-            Here's number of intent examples with explanations:
-        </p>
-        <p>
-            <b>Example 1:</b>
-        </p>
-        <pre class="brush: idl">
-            intent=a
-                term~{tok_id() == 'x:id'}
-                term(nums)~{tok_id() == 'nlpcraft:num' && 
lowercase(meta_tok('nlpcraft:num:unittype')) == 'datetime'}[0,2]
-        </pre>
-        <p><b>NOTES:</b></p>
-        <ul>
-            <li>
-                Intent has ID <code>a</code>.
-            </li>
-            <li>
-                Intent uses default conversational support (<code>true</code>) 
and default order (<code>false</code>).
-            </li>
-            <li>
-                Intent has two conversational terms that have to be found for 
the intent to match. Note that second
-                term is optional as it has <code>[0,2]</code> quantifier.
-            </li>
-            <li>
-                First term matches any single token with ID <code>x:id</code>.
-            </li>
-            <li>
-                Second term can appear zero, once or two times and it matches 
token with ID <code>nlpcraft:num</code> with
-                <code>nlpcraft:num:unittype</code> metadata property equal to 
<code>'datetime'</code> string.
-            </li>
-            <li>
-                IDL function <code>lowercase</code> used on 
<code>nlpcraft:num:unittype</code> metadata property value.
-            </li>
-            <li>
-                Note that since second term has ID (<code>nums</code>) it can 
be references by <code>@NCIntentTerm</code>
-                annotation by the callback formal parameter.
-            </li>
-        </ul>
-        <br/>
-        <p>
-            <b>Example 2:</b>
-        </p>
-        <pre class="brush: idl">
-            intent=id2
-                flow='id1 id2'
-                term={tok_id() == 'mytok' && signum(get(meta_tok('score'), 
'best')) != -1}
-                term={has_all(tok_groups(), list('actors', 'owners')) && 
size(meta_part('partAlias, 'text')) > 10}
-        </pre>
-        <p><b>NOTES:</b></p>
-        <ul>
-            <li>
-                Intent has ID <code>id2</code>.
-            </li>
-            <li>
-                Intent has dialog flow pattern: <code>'id1 id2'</code>. It 
expect sequence of intents <code>id1</code> and
-                <code>id2</code> somewhere in the history of previously 
matched intents in the course of the current conversation.
-            </li>
-            <li>
-                Intent has two non-conversational terms. Both terms have to be 
present only once (their implicit quantifiers are <code>[1,1]</code>).
-            </li>
-            <li>
-                First term should be a token with ID <code>mytok</code> and 
have metadata property <code>score</code> of type
-                map. This map should have a value with the string key 
<code>'best'</code>. <code>signum</code> of this map value
-                should not equal <code>-1</code>. Note that built-in functions 
(i.e. <code>signum</code>) can only be
-                used on the left values.
-            </li>
-            <li>
-                Second term should be a token that belongs to either 
<code>actors</code> or <code>owners</code> group.
-                It should have a part token whose with alias 
<code>partAlias</code>. That
-                part token should have metadata property <code>text</code> of 
type string, list or map. The length of
-                this string, list or map should be greater than 
<code>10</code>.
-            </li>
-        </ul>
-    </section>
 </div>
 <div class="col-md-2 third-column">
     <ul class="side-nav">

Reply via email to