Modified: tinkerpop/site/docs/3.7.0/recipes/index.html URL: http://svn.apache.org/viewvc/tinkerpop/site/docs/3.7.0/recipes/index.html?rev=1911898&r1=1911897&r2=1911898&view=diff ============================================================================== --- tinkerpop/site/docs/3.7.0/recipes/index.html (original) +++ tinkerpop/site/docs/3.7.0/recipes/index.html Thu Aug 24 19:13:53 2023 @@ -794,6 +794,25 @@ table.CodeRay td.code{padding:0 0 0 .75e .CodeRay .change .change{color:#66f} .CodeRay .head .head{color:#f4f} </style> +<!-- +--> +<!-- Matomo --> +<script> + var _paq = window._paq = window._paq || []; + /* We explicitly disable cookie tracking to avoid privacy issues */ + _paq.push(['disableCookies']); + /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ + _paq.push(['trackPageView']); + _paq.push(['enableLinkTracking']); + (function() { + var u="https://analytics.apache.org/"; + _paq.push(['setTrackerUrl', u+'matomo.php']); + _paq.push(['setSiteId', '27']); + var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; + g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); + })(); +</script> +<!-- End Matomo Code --> </head> <body class="book toc2 toc-left"> <div id="header"> @@ -917,10 +936,10 @@ provide some basic building blocks for v traversal on the paths found between them. Consider the following examples using the modern toy graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856021-1" type="radio" name="radio-set-1690856021-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856021-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856021-2" type="radio" name="radio-set-1690856021-1" class="tab-selector-2" /> - <label for="tab-1690856021-2" class="tab-label-2">groovy</label> + <input id="tab-1692897914-1" type="radio" name="radio-set-1692897914-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897914-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897914-2" type="radio" name="radio-set-1692897914-1" class="tab-selector-2" /> + <label for="tab-1692897914-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -995,10 +1014,10 @@ scenarios. For one such example, conside vertices:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856021-3" type="radio" name="radio-set-1690856021-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856021-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856021-4" type="radio" name="radio-set-1690856021-3" class="tab-selector-2" /> - <label for="tab-1690856021-4" class="tab-label-2">groovy</label> + <input id="tab-1692897914-3" type="radio" name="radio-set-1692897914-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897914-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897914-4" type="radio" name="radio-set-1692897914-3" class="tab-selector-2" /> + <label for="tab-1692897914-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1047,10 +1066,10 @@ to extract the known job, the company th the known person completed an application.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856021-5" type="radio" name="radio-set-1690856021-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856021-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856021-6" type="radio" name="radio-set-1690856021-5" class="tab-selector-2" /> - <label for="tab-1690856021-6" class="tab-label-2">groovy</label> + <input id="tab-1692897914-5" type="radio" name="radio-set-1692897914-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897914-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897914-6" type="radio" name="radio-set-1692897914-5" class="tab-selector-2" /> + <label for="tab-1692897914-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1186,10 +1205,10 @@ demonstrate how some of these different edges associated to each vertex. The following examples use the modern toy graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856033-1" type="radio" name="radio-set-1690856033-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856033-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856033-2" type="radio" name="radio-set-1690856033-1" class="tab-selector-2" /> - <label for="tab-1690856033-2" class="tab-label-2">groovy</label> + <input id="tab-1692897941-1" type="radio" name="radio-set-1692897941-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897941-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897941-2" type="radio" name="radio-set-1692897941-1" class="tab-selector-2" /> + <label for="tab-1692897941-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1284,10 +1303,10 @@ graph for demonstration purposes:</p> <p><span class="image"><img src="../images/betweeness-example.png" alt="betweeness example" width="600"></span></p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856033-3" type="radio" name="radio-set-1690856033-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856033-3" class="tab-label-1">console (groovy )</label> - <input id="tab-1690856033-4" type="radio" name="radio-set-1690856033-3" class="tab-selector-2" /> - <label for="tab-1690856033-4" class="tab-label-2">groovy </label> + <input id="tab-1692897941-3" type="radio" name="radio-set-1692897941-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897941-3" class="tab-label-1">console (groovy )</label> + <input id="tab-1692897941-4" type="radio" name="radio-set-1692897941-3" class="tab-selector-2" /> + <label for="tab-1692897941-4" class="tab-label-2">groovy </label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1415,10 +1434,10 @@ pairs). other reachable vertices in the graph. The following examples use the modern toy graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856033-5" type="radio" name="radio-set-1690856033-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856033-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856033-6" type="radio" name="radio-set-1690856033-5" class="tab-selector-2" /> - <label for="tab-1690856033-6" class="tab-label-2">groovy</label> + <input id="tab-1692897941-5" type="radio" name="radio-set-1692897941-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897941-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897941-6" type="radio" name="radio-set-1692897941-5" class="tab-selector-2" /> + <label for="tab-1692897941-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1521,10 +1540,10 @@ relative importance of adjacent vertices give it the highest rank. Consider the following example using the Grateful Dead graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856033-7" type="radio" name="radio-set-1690856033-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856033-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856033-8" type="radio" name="radio-set-1690856033-7" class="tab-selector-2" /> - <label for="tab-1690856033-8" class="tab-label-2">groovy</label> + <input id="tab-1692897941-7" type="radio" name="radio-set-1692897941-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897941-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897941-8" type="radio" name="radio-set-1692897941-7" class="tab-selector-2" /> + <label for="tab-1692897941-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1603,10 +1622,10 @@ can shorten the time required to get a r <code>GraphComputer</code> (OLAP) based traversals.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856033-9" type="radio" name="radio-set-1690856033-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856033-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856033-10" type="radio" name="radio-set-1690856033-9" class="tab-selector-2" /> - <label for="tab-1690856033-10" class="tab-label-2">groovy</label> + <input id="tab-1692897941-9" type="radio" name="radio-set-1692897941-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897941-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897941-10" type="radio" name="radio-set-1692897941-9" class="tab-selector-2" /> + <label for="tab-1692897941-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1614,12 +1633,12 @@ can shorten the time required to get a r <pre class="CodeRay highlight"><code data-lang="groovy">gremlin> g = traversal().withEmbedded(graph).withComputer() ==>graphtraversalsource[tinkergraph[<span class="key">vertices</span>:<span class="integer">6</span> <span class="key">edges</span>:<span class="integer">6</span>], graphcomputer] gremlin> g.V().pageRank().with(PageRank.propertyName,<span class="string"><span class="delimiter">'</span><span class="content">pageRank</span><span class="delimiter">'</span></span>).values(<span class="string"><span class="delimiter">'</span><span class="content">pageRank</span><span class="delimiter">'</span></span>) -==><span class="float">0.14598540152719103</span> -==><span class="float">0.14598540152719103</span> -==><span class="float">0.30472009079122486</span> -==><span class="float">0.11375510357865537</span> -==><span class="float">0.11375510357865537</span> -==><span class="float">0.1757988989970823</span></code></pre> +==><span class="float">0.14598540152719108</span> +==><span class="float">0.14598540152719108</span> +==><span class="float">0.11375510357865543</span> +==><span class="float">0.11375510357865543</span> +==><span class="float">0.17579889899708237</span> +==><span class="float">0.30472009079122503</span></code></pre> </div> </div> </div> @@ -1664,10 +1683,10 @@ patterns described in this section.</p> appear by way of some side-effect steps like <code>aggregate()</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-1" type="radio" name="radio-set-1690856045-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-2" type="radio" name="radio-set-1690856045-1" class="tab-selector-2" /> - <label for="tab-1690856045-2" class="tab-label-2">groovy</label> + <input id="tab-1692897971-1" type="radio" name="radio-set-1692897971-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-2" type="radio" name="radio-set-1692897971-1" class="tab-selector-2" /> + <label for="tab-1692897971-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1696,10 +1715,10 @@ g.V().aggregate(local, <span class="stri similar fashion to lists:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-3" type="radio" name="radio-set-1690856045-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-4" type="radio" name="radio-set-1690856045-3" class="tab-selector-2" /> - <label for="tab-1690856045-4" class="tab-label-2">groovy</label> + <input id="tab-1692897971-3" type="radio" name="radio-set-1692897971-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-4" type="radio" name="radio-set-1692897971-3" class="tab-selector-2" /> + <label for="tab-1692897971-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1732,10 +1751,10 @@ means than what is demonstrated.</p> <p>It may seem simple, but the most obvious choice to modifying what is in a list is to simply <code>unfold()</code> the <code>List</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-5" type="radio" name="radio-set-1690856045-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-6" type="radio" name="radio-set-1690856045-5" class="tab-selector-2" /> - <label for="tab-1690856045-6" class="tab-label-2">groovy</label> + <input id="tab-1692897971-5" type="radio" name="radio-set-1692897971-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-6" type="radio" name="radio-set-1692897971-5" class="tab-selector-2" /> + <label for="tab-1692897971-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1775,10 +1794,10 @@ traverser as it just flattens <code>List result, but consider what happens when there is more than one:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-7" type="radio" name="radio-set-1690856045-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-8" type="radio" name="radio-set-1690856045-7" class="tab-selector-2" /> - <label for="tab-1690856045-8" class="tab-label-2">groovy</label> + <input id="tab-1692897971-7" type="radio" name="radio-set-1692897971-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-8" type="radio" name="radio-set-1692897971-7" class="tab-selector-2" /> + <label for="tab-1692897971-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1820,10 +1839,10 @@ While this approach may be acceptable, t structure of the <code>List</code> traversers "locally" <code>unfold()</code> the lists to transform them:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-9" type="radio" name="radio-set-1690856045-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-10" type="radio" name="radio-set-1690856045-9" class="tab-selector-2" /> - <label for="tab-1690856045-10" class="tab-label-2">groovy</label> + <input id="tab-1692897971-9" type="radio" name="radio-set-1692897971-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-10" type="radio" name="radio-set-1692897971-9" class="tab-selector-2" /> + <label for="tab-1692897971-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1858,10 +1877,10 @@ thus maintaining two traverser results.< <p>This pattern for unfolding and folding <code>List</code> traversers ends up having other applications:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-11" type="radio" name="radio-set-1690856045-11" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-11" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-12" type="radio" name="radio-set-1690856045-11" class="tab-selector-2" /> - <label for="tab-1690856045-12" class="tab-label-2">groovy</label> + <input id="tab-1692897971-11" type="radio" name="radio-set-1692897971-11" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-11" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-12" type="radio" name="radio-set-1692897971-11" class="tab-selector-2" /> + <label for="tab-1692897971-12" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -1939,10 +1958,10 @@ especially in cases where the expected o form of a <code>List</code>. For example, consider the following three traversals:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-13" type="radio" name="radio-set-1690856045-13" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-13" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-14" type="radio" name="radio-set-1690856045-13" class="tab-selector-2" /> - <label for="tab-1690856045-14" class="tab-label-2">groovy</label> + <input id="tab-1692897971-13" type="radio" name="radio-set-1692897971-13" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-13" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-14" type="radio" name="radio-set-1692897971-13" class="tab-selector-2" /> + <label for="tab-1692897971-14" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2023,10 +2042,10 @@ three results (i.e. triple) that could t the use of <code>aggregate()</code> to aid in construction of this <code>List</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-15" type="radio" name="radio-set-1690856045-15" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-15" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-16" type="radio" name="radio-set-1690856045-15" class="tab-selector-2" /> - <label for="tab-1690856045-16" class="tab-label-2">groovy</label> + <input id="tab-1692897971-15" type="radio" name="radio-set-1692897971-15" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-15" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-16" type="radio" name="radio-set-1692897971-15" class="tab-selector-2" /> + <label for="tab-1692897971-16" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2138,10 +2157,10 @@ means that each traverser can effectivel vertices each:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-17" type="radio" name="radio-set-1690856045-17" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-17" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-18" type="radio" name="radio-set-1690856045-17" class="tab-selector-2" /> - <label for="tab-1690856045-18" class="tab-label-2">groovy</label> + <input id="tab-1692897971-17" type="radio" name="radio-set-1692897971-17" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-17" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-18" type="radio" name="radio-set-1692897971-17" class="tab-selector-2" /> + <label for="tab-1692897971-18" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2168,10 +2187,10 @@ vertices each:</p> results.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-19" type="radio" name="radio-set-1690856045-19" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-19" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-20" type="radio" name="radio-set-1690856045-19" class="tab-selector-2" /> - <label for="tab-1690856045-20" class="tab-label-2">groovy</label> + <input id="tab-1692897971-19" type="radio" name="radio-set-1692897971-19" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-19" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-20" type="radio" name="radio-set-1692897971-19" class="tab-selector-2" /> + <label for="tab-1692897971-20" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2252,10 +2271,10 @@ need for the transformation, the explana to end up with a <code>Map</code> is with <code>valueMap()</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-21" type="radio" name="radio-set-1690856045-21" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-21" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-22" type="radio" name="radio-set-1690856045-21" class="tab-selector-2" /> - <label for="tab-1690856045-22" class="tab-label-2">groovy</label> + <input id="tab-1692897971-21" type="radio" name="radio-set-1692897971-21" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-21" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-22" type="radio" name="radio-set-1692897971-21" class="tab-selector-2" /> + <label for="tab-1692897971-22" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2282,10 +2301,10 @@ property stored as a <code>List</code>. by avoiding use of <code>valueMap()</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-23" type="radio" name="radio-set-1690856045-23" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-23" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-24" type="radio" name="radio-set-1690856045-23" class="tab-selector-2" /> - <label for="tab-1690856045-24" class="tab-label-2">groovy</label> + <input id="tab-1692897971-23" type="radio" name="radio-set-1692897971-23" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-23" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-24" type="radio" name="radio-set-1692897971-23" class="tab-selector-2" /> + <label for="tab-1692897971-24" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2315,10 +2334,10 @@ by avoiding use of <code>valueMap()</cod generally applicable to processing any <code>Map</code> instances with any sorts of values:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-25" type="radio" name="radio-set-1690856045-25" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-25" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-26" type="radio" name="radio-set-1690856045-25" class="tab-selector-2" /> - <label for="tab-1690856045-26" class="tab-label-2">groovy</label> + <input id="tab-1692897971-25" type="radio" name="radio-set-1692897971-25" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-25" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-26" type="radio" name="radio-set-1692897971-25" class="tab-selector-2" /> + <label for="tab-1692897971-26" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2368,10 +2387,10 @@ desired output before taking this approa unavoidable extraneous keys in the output <code>Map</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-27" type="radio" name="radio-set-1690856045-27" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-27" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-28" type="radio" name="radio-set-1690856045-27" class="tab-selector-2" /> - <label for="tab-1690856045-28" class="tab-label-2">groovy</label> + <input id="tab-1692897971-27" type="radio" name="radio-set-1692897971-27" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-27" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-28" type="radio" name="radio-set-1692897971-27" class="tab-selector-2" /> + <label for="tab-1692897971-28" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2411,10 +2430,10 @@ every single vertex in the traversal str supplied. While this may be an acceptable output, it is possible to shape the <code>Map</code> to be "nicer":</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-29" type="radio" name="radio-set-1690856045-29" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-29" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-30" type="radio" name="radio-set-1690856045-29" class="tab-selector-2" /> - <label for="tab-1690856045-30" class="tab-label-2">groovy</label> + <input id="tab-1692897971-29" type="radio" name="radio-set-1692897971-29" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-29" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-30" type="radio" name="radio-set-1692897971-29" class="tab-selector-2" /> + <label for="tab-1692897971-30" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2464,10 +2483,10 @@ prior to reconstructing the <code>Map</c earlier to flatten <code>List</code> values within a <code>Map</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-31" type="radio" name="radio-set-1690856045-31" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-31" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-32" type="radio" name="radio-set-1690856045-31" class="tab-selector-2" /> - <label for="tab-1690856045-32" class="tab-label-2">groovy</label> + <input id="tab-1692897971-31" type="radio" name="radio-set-1692897971-31" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-31" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-32" type="radio" name="radio-set-1692897971-31" class="tab-selector-2" /> + <label for="tab-1692897971-32" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2517,10 +2536,10 @@ here involves the use of a <code>union() reconstructed as a new <code>Map</code> that has been merged together:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-33" type="radio" name="radio-set-1690856045-33" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-33" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-34" type="radio" name="radio-set-1690856045-33" class="tab-selector-2" /> - <label for="tab-1690856045-34" class="tab-label-2">groovy</label> + <input id="tab-1692897971-33" type="radio" name="radio-set-1692897971-33" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-33" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-34" type="radio" name="radio-set-1692897971-33" class="tab-selector-2" /> + <label for="tab-1692897971-34" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2534,7 +2553,7 @@ reconstructed as a new <code>Map</code> group(). by(keys). by(select(values).unfold()) -==>[<span class="key">label</span>:person,<span class="key">degree</span>:<span class="integer">3</span>,<span class="key">name</span>:marko,<span class="key">id</span>:<span class="integer">1</span>,<span class="key">age</span>:<span class="integer">29</span>]</code></pre> +==>[<span class="key">label</span>:person,<span class="key">id</span>:<span class="integer">1</span>,<span class="key">degree</span>:<span class="integer">3</span>,<span class="key">name</span>:marko,<span class="key">age</span>:<span class="integer">29</span>]</code></pre> </div> </div> </div> @@ -2580,10 +2599,10 @@ a <code>List</code> back for all the val <code>List</code> instances when necessary:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856045-35" type="radio" name="radio-set-1690856045-35" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856045-35" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856045-36" type="radio" name="radio-set-1690856045-35" class="tab-selector-2" /> - <label for="tab-1690856045-36" class="tab-label-2">groovy</label> + <input id="tab-1692897971-35" type="radio" name="radio-set-1692897971-35" class="tab-selector-1" checked="checked" /> + <label for="tab-1692897971-35" class="tab-label-1">console (groovy)</label> + <input id="tab-1692897971-36" type="radio" name="radio-set-1692897971-35" class="tab-selector-2" /> + <label for="tab-1692897971-36" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2600,7 +2619,7 @@ a <code>List</code> back for all the val unfold(). fold(). choose(count(local).is(eq(<span class="integer">1</span>)), unfold())) -==>[<span class="key">label</span>:person,<span class="key">name</span>:marko,<span class="key">id</span>:<span class="integer">1</span>,<span class="key">age</span>:[<span class="integer">29</span>,<span class="integer">100</span>]]</code></pre> +==>[<span class="key">label</span>:person,<span class="key">id</span>:<span class="integer">1</span>,<span class="key">name</span>:marko,<span class="key">age</span>:[<span class="integer">29</span>,<span class="integer">100</span>]]</code></pre> </div> </div> </div> @@ -2662,10 +2681,10 @@ component membership is stored in the gr <p><span class="image"><img src="../images/connected-components.png" alt="connected components" width="600"></span></p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856063-1" type="radio" name="radio-set-1690856063-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856063-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856063-2" type="radio" name="radio-set-1690856063-1" class="tab-selector-2" /> - <label for="tab-1690856063-2" class="tab-label-2">groovy</label> + <input id="tab-1692898016-1" type="radio" name="radio-set-1692898016-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898016-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898016-2" type="radio" name="radio-set-1692898016-1" class="tab-selector-2" /> + <label for="tab-1692898016-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2711,10 +2730,10 @@ described in more detail in the The traversal looks like:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856063-3" type="radio" name="radio-set-1690856063-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856063-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856063-4" type="radio" name="radio-set-1690856063-3" class="tab-selector-2" /> - <label for="tab-1690856063-4" class="tab-label-2">groovy</label> + <input id="tab-1692898016-3" type="radio" name="radio-set-1692898016-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898016-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898016-4" type="radio" name="radio-set-1692898016-3" class="tab-selector-2" /> + <label for="tab-1692898016-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2723,7 +2742,7 @@ The traversal looks like:</p> group().by(ConnectedComponent.component). select(values).unfold() ==>[v[E],v[D]] -==>[v[A],v[C],v[B]] +==>[v[C],v[B],v[A]] ==>[v[F]]</code></pre> </div> </div> @@ -2758,10 +2777,10 @@ default property key within which the re <p>A straightforward way to detect the various subgraphs with an OLTP traversal is to do this:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856063-5" type="radio" name="radio-set-1690856063-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856063-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856063-6" type="radio" name="radio-set-1690856063-5" class="tab-selector-2" /> - <label for="tab-1690856063-6" class="tab-label-2">groovy</label> + <input id="tab-1692898016-5" type="radio" name="radio-set-1692898016-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898016-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898016-6" type="radio" name="radio-set-1692898016-5" class="tab-selector-2" /> + <label for="tab-1692898016-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2899,10 +2918,10 @@ depicted below Gremlin could be use to d <p><span class="image"><img src="../images/graph-cycle.png" alt="graph cycle" width="250"></span></p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856074-1" type="radio" name="radio-set-1690856074-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856074-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856074-2" type="radio" name="radio-set-1690856074-1" class="tab-selector-2" /> - <label for="tab-1690856074-2" class="tab-label-2">groovy</label> + <input id="tab-1692898044-1" type="radio" name="radio-set-1692898044-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898044-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898044-2" type="radio" name="radio-set-1692898044-1" class="tab-selector-2" /> + <label for="tab-1692898044-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -2976,10 +2995,10 @@ It also respected the directionality of themselves). To do so, you would need to <code>.emit()</code> a Traverser before the repeat()-loop.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856074-3" type="radio" name="radio-set-1690856074-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856074-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856074-4" type="radio" name="radio-set-1690856074-3" class="tab-selector-2" /> - <label for="tab-1690856074-4" class="tab-label-2">groovy</label> + <input id="tab-1692898044-3" type="radio" name="radio-set-1692898044-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898044-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898044-4" type="radio" name="radio-set-1692898044-3" class="tab-selector-2" /> + <label for="tab-1692898044-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3042,10 +3061,10 @@ g.V().as(<span class="string"><span clas outgoing edges, in the modern graph?</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856074-5" type="radio" name="radio-set-1690856074-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856074-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856074-6" type="radio" name="radio-set-1690856074-5" class="tab-selector-2" /> - <label for="tab-1690856074-6" class="tab-label-2">groovy</label> + <input id="tab-1692898044-5" type="radio" name="radio-set-1692898044-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898044-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898044-6" type="radio" name="radio-set-1692898044-5" class="tab-selector-2" /> + <label for="tab-1692898044-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3083,10 +3102,10 @@ that happens to have an eighth bridge (t <p>Gremlin can detect if such a cycle exists with:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856074-7" type="radio" name="radio-set-1690856074-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856074-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856074-8" type="radio" name="radio-set-1690856074-7" class="tab-selector-2" /> - <label for="tab-1690856074-8" class="tab-label-2">groovy</label> + <input id="tab-1692898044-7" type="radio" name="radio-set-1692898044-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898044-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898044-8" type="radio" name="radio-set-1692898044-7" class="tab-selector-2" /> + <label for="tab-1692898044-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3168,10 +3187,10 @@ the first step above, which would mean t detected circuit can be displayed with:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856074-9" type="radio" name="radio-set-1690856074-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856074-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856074-10" type="radio" name="radio-set-1690856074-9" class="tab-selector-2" /> - <label for="tab-1690856074-10" class="tab-label-2">groovy</label> + <input id="tab-1692898044-9" type="radio" name="radio-set-1692898044-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898044-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898044-10" type="radio" name="radio-set-1692898044-9" class="tab-selector-2" /> + <label for="tab-1692898044-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3221,10 +3240,10 @@ label and direction will be considered " that is duplicative of the "created" edge between vertex "1" and "3".</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-1" type="radio" name="radio-set-1690856086-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-2" type="radio" name="radio-set-1690856086-1" class="tab-selector-2" /> - <label for="tab-1690856086-2" class="tab-label-2">groovy</label> + <input id="tab-1692898077-1" type="radio" name="radio-set-1692898077-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-2" type="radio" name="radio-set-1692898077-1" class="tab-selector-2" /> + <label for="tab-1692898077-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3252,10 +3271,10 @@ g.V(<span class="integer">1</span>).outE <p>One way to find the duplicate edges would be to do something like this:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-3" type="radio" name="radio-set-1690856086-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-4" type="radio" name="radio-set-1690856086-3" class="tab-selector-2" /> - <label for="tab-1690856086-4" class="tab-label-2">groovy</label> + <input id="tab-1692898077-3" type="radio" name="radio-set-1692898077-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-4" type="radio" name="radio-set-1692898077-3" class="tab-selector-2" /> + <label for="tab-1692898077-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3318,10 +3337,10 @@ contain duplicate.</p> that uses less memory might look like this:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-5" type="radio" name="radio-set-1690856086-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-6" type="radio" name="radio-set-1690856086-5" class="tab-selector-2" /> - <label for="tab-1690856086-6" class="tab-label-2">groovy</label> + <input id="tab-1692898077-5" type="radio" name="radio-set-1692898077-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-6" type="radio" name="radio-set-1692898077-5" class="tab-selector-2" /> + <label for="tab-1692898077-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3390,10 +3409,10 @@ value.</p> <p>Note that the above traversal could also be written using <code>match</code> step:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-7" type="radio" name="radio-set-1690856086-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-8" type="radio" name="radio-set-1690856086-7" class="tab-selector-2" /> - <label for="tab-1690856086-8" class="tab-label-2">groovy</label> + <input id="tab-1692898077-7" type="radio" name="radio-set-1692898077-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-8" type="radio" name="radio-set-1692898077-7" class="tab-selector-2" /> + <label for="tab-1692898077-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3442,10 +3461,10 @@ The previous examples invoke traversal s as a performance optimization.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-9" type="radio" name="radio-set-1690856086-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-10" type="radio" name="radio-set-1690856086-9" class="tab-selector-2" /> - <label for="tab-1690856086-10" class="tab-label-2">groovy</label> + <input id="tab-1692898077-9" type="radio" name="radio-set-1692898077-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-10" type="radio" name="radio-set-1692898077-9" class="tab-selector-2" /> + <label for="tab-1692898077-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3501,10 +3520,10 @@ example, a "duplicate" definition could demonstration, an additional edge is added to the "modern" graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-11" type="radio" name="radio-set-1690856086-11" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-11" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-12" type="radio" name="radio-set-1690856086-11" class="tab-selector-2" /> - <label for="tab-1690856086-12" class="tab-label-2">groovy</label> + <input id="tab-1692898077-11" type="radio" name="radio-set-1692898077-11" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-11" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-12" type="radio" name="radio-set-1692898077-11" class="tab-selector-2" /> + <label for="tab-1692898077-12" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3535,10 +3554,10 @@ g.V(<span class="integer">1</span>).outE <p>To identify the duplicate with this revised definition, the previous traversal can be modified to:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856086-13" type="radio" name="radio-set-1690856086-13" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856086-13" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856086-14" type="radio" name="radio-set-1690856086-13" class="tab-selector-2" /> - <label for="tab-1690856086-14" class="tab-label-2">groovy</label> + <input id="tab-1692898077-13" type="radio" name="radio-set-1692898077-13" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898077-13" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898077-14" type="radio" name="radio-set-1692898077-13" class="tab-selector-2" /> + <label for="tab-1692898077-14" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3588,10 +3607,10 @@ group for duplicates.</p> <p>Consider the following example with some duplicate vertices added to the "modern" graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856101-1" type="radio" name="radio-set-1690856101-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856101-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856101-2" type="radio" name="radio-set-1690856101-1" class="tab-selector-2" /> - <label for="tab-1690856101-2" class="tab-label-2">groovy</label> + <input id="tab-1692898108-1" type="radio" name="radio-set-1692898108-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898108-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898108-2" type="radio" name="radio-set-1692898108-1" class="tab-selector-2" /> + <label for="tab-1692898108-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3637,10 +3656,10 @@ the <code>Map</code> provided by the <co match the feature. To extract just those vertices that contain duplicates an additional filter can be added:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856101-3" type="radio" name="radio-set-1690856101-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856101-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856101-4" type="radio" name="radio-set-1690856101-3" class="tab-selector-2" /> - <label for="tab-1690856101-4" class="tab-label-2">groovy</label> + <input id="tab-1692898108-3" type="radio" name="radio-set-1692898108-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898108-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898108-4" type="radio" name="radio-set-1692898108-3" class="tab-selector-2" /> + <label for="tab-1692898108-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3689,10 +3708,10 @@ be created with the same properties and follows:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856111-1" type="radio" name="radio-set-1690856111-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856111-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856111-2" type="radio" name="radio-set-1690856111-1" class="tab-selector-2" /> - <label for="tab-1690856111-2" class="tab-label-2">groovy</label> + <input id="tab-1692898131-1" type="radio" name="radio-set-1692898131-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898131-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898131-2" type="radio" name="radio-set-1692898131-1" class="tab-selector-2" /> + <label for="tab-1692898131-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3724,10 +3743,10 @@ follows:</p> the "peter" vertex in a single traversal:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856111-3" type="radio" name="radio-set-1690856111-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856111-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856111-4" type="radio" name="radio-set-1690856111-3" class="tab-selector-2" /> - <label for="tab-1690856111-4" class="tab-label-2">groovy</label> + <input id="tab-1692898131-3" type="radio" name="radio-set-1692898131-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898131-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898131-4" type="radio" name="radio-set-1692898131-3" class="tab-selector-2" /> + <label for="tab-1692898131-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3798,10 +3817,10 @@ properties to transfer to the new "moved <p>Checking for whether or not a graph element is present in the graph is simple:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856122-1" type="radio" name="radio-set-1690856122-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856122-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856122-2" type="radio" name="radio-set-1690856122-1" class="tab-selector-2" /> - <label for="tab-1690856122-2" class="tab-label-2">groovy</label> + <input id="tab-1692898156-1" type="radio" name="radio-set-1692898156-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898156-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898156-2" type="radio" name="radio-set-1692898156-1" class="tab-selector-2" /> + <label for="tab-1692898156-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3832,10 +3851,10 @@ determine whether or not to add a new ve entire operation can occur in a single traversal.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856122-3" type="radio" name="radio-set-1690856122-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856122-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856122-4" type="radio" name="radio-set-1690856122-3" class="tab-selector-2" /> - <label for="tab-1690856122-4" class="tab-label-2">groovy</label> + <input id="tab-1692898156-3" type="radio" name="radio-set-1692898156-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898156-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898156-4" type="radio" name="radio-set-1692898156-3" class="tab-selector-2" /> + <label for="tab-1692898156-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3890,10 +3909,10 @@ then the vertex does not exist and it is <p>This "get or create" logic can be expanded to be "upsert" like functionality as follows:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856122-5" type="radio" name="radio-set-1690856122-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856122-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856122-6" type="radio" name="radio-set-1690856122-5" class="tab-selector-2" /> - <label for="tab-1690856122-6" class="tab-label-2">groovy</label> + <input id="tab-1692898156-5" type="radio" name="radio-set-1692898156-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898156-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898156-6" type="radio" name="radio-set-1692898156-5" class="tab-selector-2" /> + <label for="tab-1692898156-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3955,10 +3974,10 @@ execution. <p>It is possible to do similar sorts of operations with edges using the same pattern:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856122-7" type="radio" name="radio-set-1690856122-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856122-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856122-8" type="radio" name="radio-set-1690856122-7" class="tab-selector-2" /> - <label for="tab-1690856122-8" class="tab-label-2">groovy</label> + <input id="tab-1692898156-7" type="radio" name="radio-set-1692898156-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898156-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898156-8" type="radio" name="radio-set-1692898156-7" class="tab-selector-2" /> + <label for="tab-1692898156-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -3999,10 +4018,10 @@ found between these two vertices, then i <p>Consider the following traversal over the "modern" toy graph:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856134-1" type="radio" name="radio-set-1690856134-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856134-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856134-2" type="radio" name="radio-set-1690856134-1" class="tab-selector-2" /> - <label for="tab-1690856134-2" class="tab-label-2">groovy</label> + <input id="tab-1692898180-1" type="radio" name="radio-set-1692898180-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898180-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898180-2" type="radio" name="radio-set-1692898180-1" class="tab-selector-2" /> + <label for="tab-1692898180-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4030,10 +4049,10 @@ different picture of the result. For exa a domain concept such as "young", "old" and "very old".</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856134-3" type="radio" name="radio-set-1690856134-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856134-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856134-4" type="radio" name="radio-set-1690856134-3" class="tab-selector-2" /> - <label for="tab-1690856134-4" class="tab-label-2">groovy</label> + <input id="tab-1692898180-3" type="radio" name="radio-set-1692898180-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898180-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898180-4" type="radio" name="radio-set-1692898180-3" class="tab-selector-2" /> + <label for="tab-1692898180-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4085,10 +4104,10 @@ like the following in Java:</p> there is another option to consider with <code>coalesce</code>:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856134-5" type="radio" name="radio-set-1690856134-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856134-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856134-6" type="radio" name="radio-set-1690856134-5" class="tab-selector-2" /> - <label for="tab-1690856134-6" class="tab-label-2">groovy</label> + <input id="tab-1692898180-5" type="radio" name="radio-set-1692898180-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898180-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898180-6" type="radio" name="radio-set-1692898180-5" class="tab-selector-2" /> + <label for="tab-1692898180-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4132,10 +4151,10 @@ there is another option to consider with <p><span class="image right"><img src="../images/tree-lca.png" alt="tree lca" width="230"></span> The following examples will use this graph depicted here:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-1" type="radio" name="radio-set-1690856145-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-2" type="radio" name="radio-set-1690856145-1" class="tab-selector-2" /> - <label for="tab-1690856145-2" class="tab-label-2">groovy</label> + <input id="tab-1692898201-1" type="radio" name="radio-set-1692898201-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-2" type="radio" name="radio-set-1692898201-1" class="tab-selector-2" /> + <label for="tab-1692898201-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4189,10 +4208,10 @@ start at vertex A and loop through all o completed 3 loops.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-3" type="radio" name="radio-set-1690856145-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-4" type="radio" name="radio-set-1690856145-3" class="tab-selector-2" /> - <label for="tab-1690856145-4" class="tab-label-2">groovy</label> + <input id="tab-1692898201-3" type="radio" name="radio-set-1692898201-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-4" type="radio" name="radio-set-1692898201-3" class="tab-selector-2" /> + <label for="tab-1692898201-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4225,10 +4244,10 @@ to be vertex G, we will see that this tr exit based on reaching the maximum number of loops (3).</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-5" type="radio" name="radio-set-1690856145-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-6" type="radio" name="radio-set-1690856145-5" class="tab-selector-2" /> - <label for="tab-1690856145-6" class="tab-label-2">groovy</label> + <input id="tab-1692898201-5" type="radio" name="radio-set-1692898201-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-6" type="radio" name="radio-set-1692898201-5" class="tab-selector-2" /> + <label for="tab-1692898201-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4271,10 +4290,10 @@ several different recipes for accomplish <p>If the desired output is to get each vertex and its associated depth this can be accomplished using this traversal.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-7" type="radio" name="radio-set-1690856145-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-8" type="radio" name="radio-set-1690856145-7" class="tab-selector-2" /> - <label for="tab-1690856145-8" class="tab-label-2">groovy</label> + <input id="tab-1692898201-7" type="radio" name="radio-set-1692898201-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-8" type="radio" name="radio-set-1692898201-7" class="tab-selector-2" /> + <label for="tab-1692898201-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4317,10 +4336,10 @@ several different recipes for accomplish this can be accomplished with this traversal.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-9" type="radio" name="radio-set-1690856145-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-10" type="radio" name="radio-set-1690856145-9" class="tab-selector-2" /> - <label for="tab-1690856145-10" class="tab-label-2">groovy</label> + <input id="tab-1692898201-9" type="radio" name="radio-set-1692898201-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-10" type="radio" name="radio-set-1692898201-9" class="tab-selector-2" /> + <label for="tab-1692898201-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4366,10 +4385,10 @@ be accomplished.</p> in the <code>until()</code> checking for a vertex with a degree of zero.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-11" type="radio" name="radio-set-1690856145-11" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-11" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-12" type="radio" name="radio-set-1690856145-11" class="tab-selector-2" /> - <label for="tab-1690856145-12" class="tab-label-2">groovy</label> + <input id="tab-1692898201-11" type="radio" name="radio-set-1692898201-11" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-11" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-12" type="radio" name="radio-set-1692898201-11" class="tab-selector-2" /> + <label for="tab-1692898201-12" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4400,10 +4419,10 @@ within a <code>repeat().times()</code> l up to a maximum of 5 times.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-13" type="radio" name="radio-set-1690856145-13" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-13" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-14" type="radio" name="radio-set-1690856145-13" class="tab-selector-2" /> - <label for="tab-1690856145-14" class="tab-label-2">groovy</label> + <input id="tab-1692898201-13" type="radio" name="radio-set-1692898201-13" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-13" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-14" type="radio" name="radio-set-1692898201-13" class="tab-selector-2" /> + <label for="tab-1692898201-14" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4430,10 +4449,10 @@ For example, we can first use a more tra edges two times, and then traverse <code>out()</code> edges up to five times.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856145-15" type="radio" name="radio-set-1690856145-15" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856145-15" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856145-16" type="radio" name="radio-set-1690856145-15" class="tab-selector-2" /> - <label for="tab-1690856145-16" class="tab-label-2">groovy</label> + <input id="tab-1692898201-15" type="radio" name="radio-set-1692898201-15" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898201-15" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898201-16" type="radio" name="radio-set-1692898201-15" class="tab-selector-2" /> + <label for="tab-1692898201-16" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4468,10 +4487,10 @@ the number of elements being dropped fro "modern" graph.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856157-1" type="radio" name="radio-set-1690856157-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856157-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856157-2" type="radio" name="radio-set-1690856157-1" class="tab-selector-2" /> - <label for="tab-1690856157-2" class="tab-label-2">groovy</label> + <input id="tab-1692898225-1" type="radio" name="radio-set-1692898225-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898225-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898225-2" type="radio" name="radio-set-1692898225-1" class="tab-selector-2" /> + <label for="tab-1692898225-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4531,10 +4550,10 @@ second ten records and so on, until pote <p>In Gremlin, a basic approach to paging would look something like the following:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856167-1" type="radio" name="radio-set-1690856167-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856167-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856167-2" type="radio" name="radio-set-1690856167-1" class="tab-selector-2" /> - <label for="tab-1690856167-2" class="tab-label-2">groovy</label> + <input id="tab-1692898244-1" type="radio" name="radio-set-1692898244-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898244-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898244-2" type="radio" name="radio-set-1692898244-1" class="tab-selector-2" /> + <label for="tab-1692898244-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4600,10 +4619,10 @@ to getting a total count without doing a removed then the traversals become more simple:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856167-3" type="radio" name="radio-set-1690856167-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856167-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856167-4" type="radio" name="radio-set-1690856167-3" class="tab-selector-2" /> - <label for="tab-1690856167-4" class="tab-label-2">groovy</label> + <input id="tab-1692898244-3" type="radio" name="radio-set-1692898244-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898244-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898244-4" type="radio" name="radio-set-1692898244-3" class="tab-selector-2" /> + <label for="tab-1692898244-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4653,10 +4672,10 @@ second traversal, the graph will still r <p>The only way to completely avoid that problem is to re-use the same traversal instance:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856167-5" type="radio" name="radio-set-1690856167-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856167-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856167-6" type="radio" name="radio-set-1690856167-5" class="tab-selector-2" /> - <label for="tab-1690856167-6" class="tab-label-2">groovy</label> + <input id="tab-1692898244-5" type="radio" name="radio-set-1692898244-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898244-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898244-6" type="radio" name="radio-set-1692898244-5" class="tab-selector-2" /> + <label for="tab-1692898244-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4720,10 +4739,10 @@ specific person as to what their opinion following script generates some data for the graph using that basic schema:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-1" type="radio" name="radio-set-1690856178-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-2" type="radio" name="radio-set-1690856178-1" class="tab-selector-2" /> - <label for="tab-1690856178-2" class="tab-label-2">groovy</label> + <input id="tab-1692898265-1" type="radio" name="radio-set-1692898265-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-2" type="radio" name="radio-set-1692898265-1" class="tab-selector-2" /> + <label for="tab-1692898265-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4801,10 +4820,10 @@ gremlin> <span class="integer">2</spa <p>The first step to making a recommendation to "alice" using collaborative filtering is to understand what she bought:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-3" type="radio" name="radio-set-1690856178-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-4" type="radio" name="radio-set-1690856178-3" class="tab-selector-2" /> - <label for="tab-1690856178-4" class="tab-label-2">groovy</label> + <input id="tab-1692898265-3" type="radio" name="radio-set-1692898265-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-4" type="radio" name="radio-set-1692898265-3" class="tab-selector-2" /> + <label for="tab-1692898265-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4841,10 +4860,10 @@ focus on the neighborhood around that pr <p>The next step is to determine who else purchased those products:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-5" type="radio" name="radio-set-1690856178-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-6" type="radio" name="radio-set-1690856178-5" class="tab-selector-2" /> - <label for="tab-1690856178-6" class="tab-label-2">groovy</label> + <input id="tab-1692898265-5" type="radio" name="radio-set-1692898265-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-6" type="radio" name="radio-set-1692898265-5" class="tab-selector-2" /> + <label for="tab-1692898265-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4874,10 +4893,10 @@ focus on the neighborhood around that pr interest is in what individuals other than herself purchased:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-7" type="radio" name="radio-set-1690856178-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-8" type="radio" name="radio-set-1690856178-7" class="tab-selector-2" /> - <label for="tab-1690856178-8" class="tab-label-2">groovy</label> + <input id="tab-1692898265-7" type="radio" name="radio-set-1692898265-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-8" type="radio" name="radio-set-1692898265-7" class="tab-selector-2" /> + <label for="tab-1692898265-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4918,10 +4937,10 @@ interest is in what individuals other th they bought:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-9" type="radio" name="radio-set-1690856178-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-10" type="radio" name="radio-set-1690856178-9" class="tab-selector-2" /> - <label for="tab-1690856178-10" class="tab-label-2">groovy</label> + <input id="tab-1692898265-9" type="radio" name="radio-set-1692898265-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-10" type="radio" name="radio-set-1692898265-9" class="tab-selector-2" /> + <label for="tab-1692898265-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -4968,10 +4987,10 @@ already purchased some of these products that she already owns. Those products she already purchased can be excluded as follows:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-11" type="radio" name="radio-set-1690856178-11" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-11" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-12" type="radio" name="radio-set-1690856178-11" class="tab-selector-2" /> - <label for="tab-1690856178-12" class="tab-label-2">groovy</label> + <input id="tab-1692898265-11" type="radio" name="radio-set-1692898265-11" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-11" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-12" type="radio" name="radio-set-1692898265-11" class="tab-selector-2" /> + <label for="tab-1692898265-12" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5012,10 +5031,10 @@ that she already owns. Those products sh purposes) to form a ranking:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-13" type="radio" name="radio-set-1690856178-13" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-13" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-14" type="radio" name="radio-set-1690856178-13" class="tab-selector-2" /> - <label for="tab-1690856178-14" class="tab-label-2">groovy</label> + <input id="tab-1692898265-13" type="radio" name="radio-set-1692898265-13" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-13" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-14" type="radio" name="radio-set-1692898265-13" class="tab-selector-2" /> + <label for="tab-1692898265-14" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5078,10 +5097,10 @@ vertices that make up the recommendation who have at least one product in common:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-15" type="radio" name="radio-set-1690856178-15" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-15" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-16" type="radio" name="radio-set-1690856178-15" class="tab-selector-2" /> - <label for="tab-1690856178-16" class="tab-label-2">groovy</label> + <input id="tab-1692898265-15" type="radio" name="radio-set-1692898265-15" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-15" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-16" type="radio" name="radio-set-1692898265-15" class="tab-selector-2" /> + <label for="tab-1692898265-16" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5113,10 +5132,10 @@ who have at least one product in common: <p>Next, do some grouping to find count how many products they have in common:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-17" type="radio" name="radio-set-1690856178-17" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-17" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-18" type="radio" name="radio-set-1690856178-17" class="tab-selector-2" /> - <label for="tab-1690856178-18" class="tab-label-2">groovy</label> + <input id="tab-1692898265-17" type="radio" name="radio-set-1692898265-17" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-17" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-18" type="radio" name="radio-set-1692898265-17" class="tab-selector-2" /> + <label for="tab-1692898265-18" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5152,10 +5171,10 @@ who have at least one product in common: that maximum:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-19" type="radio" name="radio-set-1690856178-19" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-19" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-20" type="radio" name="radio-set-1690856178-19" class="tab-selector-2" /> - <label for="tab-1690856178-20" class="tab-label-2">groovy</label> + <input id="tab-1692898265-19" type="radio" name="radio-set-1692898265-19" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-19" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-20" type="radio" name="radio-set-1692898265-19" class="tab-selector-2" /> + <label for="tab-1692898265-20" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5197,10 +5216,10 @@ that maximum:</p> common:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-21" type="radio" name="radio-set-1690856178-21" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-21" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-22" type="radio" name="radio-set-1690856178-21" class="tab-selector-2" /> - <label for="tab-1690856178-22" class="tab-label-2">groovy</label> + <input id="tab-1692898265-21" type="radio" name="radio-set-1692898265-21" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-21" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-22" type="radio" name="radio-set-1692898265-21" class="tab-selector-2" /> + <label for="tab-1692898265-22" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5247,10 +5266,10 @@ common:</p> purchased:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-23" type="radio" name="radio-set-1690856178-23" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-23" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-24" type="radio" name="radio-set-1690856178-23" class="tab-selector-2" /> - <label for="tab-1690856178-24" class="tab-label-2">groovy</label> + <input id="tab-1692898265-23" type="radio" name="radio-set-1692898265-23" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-23" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-24" type="radio" name="radio-set-1692898265-23" class="tab-selector-2" /> + <label for="tab-1692898265-24" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5300,10 +5319,10 @@ purchased:</p> <p>The above output shows that one product is held in common making it the top recommendation:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-25" type="radio" name="radio-set-1690856178-25" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-25" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-26" type="radio" name="radio-set-1690856178-25" class="tab-selector-2" /> - <label for="tab-1690856178-26" class="tab-label-2">groovy</label> + <input id="tab-1692898265-25" type="radio" name="radio-set-1692898265-25" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-25" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-26" type="radio" name="radio-set-1692898265-25" class="tab-selector-2" /> + <label for="tab-1692898265-26" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5363,10 +5382,10 @@ purchased:</p> recommendation algorithm:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-27" type="radio" name="radio-set-1690856178-27" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-27" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-28" type="radio" name="radio-set-1690856178-27" class="tab-selector-2" /> - <label for="tab-1690856178-28" class="tab-label-2">groovy</label> + <input id="tab-1692898265-27" type="radio" name="radio-set-1692898265-27" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-27" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-28" type="radio" name="radio-set-1692898265-27" class="tab-selector-2" /> + <label for="tab-1692898265-28" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5413,10 +5432,10 @@ place additional limits on the traversal traversal sample the data for no longer than one second, the previous "basic" recommendation could be changed to:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856178-29" type="radio" name="radio-set-1690856178-29" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856178-29" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856178-30" type="radio" name="radio-set-1690856178-29" class="tab-selector-2" /> - <label for="tab-1690856178-30" class="tab-label-2">groovy</label> + <input id="tab-1692898265-29" type="radio" name="radio-set-1692898265-29" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898265-29" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898265-30" type="radio" name="radio-set-1692898265-29" class="tab-selector-2" /> + <label for="tab-1692898265-30" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5470,10 +5489,10 @@ achieve the desired outcome.</p> is a simple example that identifies the shortest path between vertex "1" and vertex "5" while traversing over out edges:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-1" type="radio" name="radio-set-1690856194-1" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-1" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-2" type="radio" name="radio-set-1690856194-1" class="tab-selector-2" /> - <label for="tab-1690856194-2" class="tab-label-2">groovy</label> + <input id="tab-1692898298-1" type="radio" name="radio-set-1692898298-1" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898298-1" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898298-2" type="radio" name="radio-set-1692898298-1" class="tab-selector-2" /> + <label for="tab-1692898298-2" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5545,10 +5564,10 @@ length three), but this example is not c <p>The following code block demonstrates how the shortest path from <code>v[1]</code> to <code>v[5]</code> can be queried in OLAP, using the <code>shortestPath()</code> step.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-3" type="radio" name="radio-set-1690856194-3" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-3" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-4" type="radio" name="radio-set-1690856194-3" class="tab-selector-2" /> - <label for="tab-1690856194-4" class="tab-label-2">groovy</label> + <input id="tab-1692898298-3" type="radio" name="radio-set-1692898298-3" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898298-3" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898298-4" type="radio" name="radio-set-1692898298-3" class="tab-selector-2" /> + <label for="tab-1692898298-4" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5582,10 +5601,10 @@ be measured by data within the graph its but includes a "weight" on the edges, that will be used to help determine the "cost" of a particular path:</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-5" type="radio" name="radio-set-1690856194-5" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-5" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-6" type="radio" name="radio-set-1690856194-5" class="tab-selector-2" /> - <label for="tab-1690856194-6" class="tab-label-2">groovy</label> + <input id="tab-1692898298-5" type="radio" name="radio-set-1692898298-5" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898298-5" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898298-6" type="radio" name="radio-set-1692898298-5" class="tab-selector-2" /> + <label for="tab-1692898298-6" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5687,10 +5706,10 @@ structure.</p> <p>The next code block demonstrates how the <code>shortestPath()</code> step can be used in OLAP to determine the shortest weighted path.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-7" type="radio" name="radio-set-1690856194-7" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-7" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-8" type="radio" name="radio-set-1690856194-7" class="tab-selector-2" /> - <label for="tab-1690856194-8" class="tab-label-2">groovy</label> + <input id="tab-1692898298-7" type="radio" name="radio-set-1692898298-7" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898298-7" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898298-8" type="radio" name="radio-set-1692898298-7" class="tab-selector-2" /> + <label for="tab-1692898298-8" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5725,10 +5744,10 @@ g.V(<span class="integer">1</span>).shor in the modern toy graph.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-9" type="radio" name="radio-set-1690856194-9" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-9" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-10" type="radio" name="radio-set-1690856194-9" class="tab-selector-2" /> - <label for="tab-1690856194-10" class="tab-label-2">groovy</label> + <input id="tab-1692898298-9" type="radio" name="radio-set-1692898298-9" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898298-9" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898298-10" type="radio" name="radio-set-1692898298-9" class="tab-selector-2" /> + <label for="tab-1692898298-10" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5843,10 +5862,10 @@ in the modern toy graph.</p> <p>Again, this can be translated into an OLAP query using the <code>shortestPath()</code> step.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-11" type="radio" name="radio-set-1690856194-11" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-11" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-12" type="radio" name="radio-set-1690856194-11" class="tab-selector-2" /> - <label for="tab-1690856194-12" class="tab-label-2">groovy</label> + <input id="tab-1692898298-11" type="radio" name="radio-set-1692898298-11" class="tab-selector-1" checked="checked" /> + <label for="tab-1692898298-11" class="tab-label-1">console (groovy)</label> + <input id="tab-1692898298-12" type="radio" name="radio-set-1692898298-11" class="tab-selector-2" /> + <label for="tab-1692898298-12" class="tab-label-2">groovy</label> <div class="tabcontent"> <div class="tabcontent-1"> <div class="listingblock"> @@ -5926,10 +5945,10 @@ allowed to leave the local star graph, i shortest paths can be passed back into the OLTP <code>GraphTraversalSource</code>, which can then be used to query the values.</p> </div> <section class="tabs tabs-2"> - <input id="tab-1690856194-13" type="radio" name="radio-set-1690856194-13" class="tab-selector-1" checked="checked" /> - <label for="tab-1690856194-13" class="tab-label-1">console (groovy)</label> - <input id="tab-1690856194-14" type="radio" name="radio-set-1690856194-13" class="tab-selector-2" /> - <label for="tab-1690856194-14" class="tab-label-2">groovy</label>
[... 977 lines stripped ...]
