tinkerpop-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rd...@apache.org
Subject [08/45] tinkerpop git commit: Move appendix to its own doc and out of index.
Date Mon, 23 Jan 2017 19:34:22 GMT
Move appendix to its own doc and out of index.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/3e54d897
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/3e54d897
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/3e54d897

Branch: refs/heads/TINKERPOP-1602
Commit: 3e54d897e70f26fdefbe30daf5ce19a38a052e4d
Parents: 7783c83
Author: Stephen Mallette <spmva@genoprime.com>
Authored: Tue Jan 10 08:52:58 2017 -0500
Committer: Stephen Mallette <spmva@genoprime.com>
Committed: Tue Jan 10 08:52:58 2017 -0500

----------------------------------------------------------------------
 docs/src/recipes/appendix.asciidoc | 112 ++++++++++++++++++++++++++++++++
 docs/src/recipes/index.asciidoc    |  97 +--------------------------
 2 files changed, 113 insertions(+), 96 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3e54d897/docs/src/recipes/appendix.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/recipes/appendix.asciidoc b/docs/src/recipes/appendix.asciidoc
new file mode 100644
index 0000000..63ec447
--- /dev/null
+++ b/docs/src/recipes/appendix.asciidoc
@@ -0,0 +1,112 @@
+////
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+////
+Appendix
+========
+
+Many of the recipes are based on questions and answers provided on the gremlin-users mailing
list. This section
+contains a number of traversals from the mailing list that do not easily fit any particular
pattern (i.e. a recipe),
+but are nonetheless interesting and thus remain good tools for learning Gremlin.
+
+[[appendix-a]]
+_For each person in a "follows" graph, determine the number of followers and list their names._
+
+[gremlin-groovy]
+----
+g.addV('name','marko').as('marko').
+  addV('name','josh').as('josh').
+  addV('name','daniel').as('daniel').
+  addV('name','matthias').as('matthias').
+  addE('follows').from('josh').to('marko').
+  addE('follows').from('matthias').to('josh').
+  addE('follows').from('daniel').to('josh').
+  addE('follows').from('daniel').to('marko').iterate()
+g.V().as('p').
+  map(__.in('follows').values('name').fold()).
+  group().by(select('p').by('name')).
+          by(project('numFollowers','followers').
+               by(count(local)).by()).next()
+----
+
+[[appendix-b]]
+_In the "modern" graph, show each person, the software they worked on and the co-worker count
for the software and
+the names of those co-workers._
+
+[gremlin-groovy,modern]
+----
+g.V().hasLabel("person").as("p").
+  out("created").as("s").
+  map(__.in("created").
+    where(neq("p")).values("name").fold()).
+  group().by(select("p").by("name")).
+    by(group().by(select("s").by("name")).
+    by(project("numCoworkers","coworkers").
+         by(count(local)).by())).next()
+----
+
+[[appendix-c]]
+_Assuming a graph of students, classes and times, detect students who have a conflicting
schedule._
+
+[gremlin-groovy]
+----
+g.addV(label, "student", "name", "Pete").as("s1").
+  addV(label, "student", "name", "Joe").as("s2").
+  addV(label, "class", "name", "Java's GC").as("c1").
+  addV(label, "class", "name", "FP Principles").as("c2").
+  addV(label, "class", "name", "Memory Management in C").as("c3").
+  addV(label, "class", "name", "Memory Management in C++").as("c4").
+  addV(label, "timeslot", "date", "11/25/2016", "fromTime", "10:00", "toTime", "11:00").as("t1").
+  addV(label, "timeslot", "date", "11/25/2016", "fromTime", "11:00", "toTime", "12:00").as("t2").
+  addE("attends").from("s1").to("c1").
+  addE("attends").from("s1").to("c2").
+  addE("attends").from("s1").to("c3").
+  addE("attends").from("s1").to("c4").
+  addE("attends").from("s2").to("c2").
+  addE("attends").from("s2").to("c3").
+  addE("allocated").from("c1").to("t1").
+  addE("allocated").from("c1").to("t2").
+  addE("allocated").from("c2").to("t1").
+  addE("allocated").from("c3").to("t2").
+  addE("allocated").from("c4").to("t2").iterate()
+g.V().hasLabel("student").as("s").
+  out("attends").as("c").
+  out("allocated").as("t").
+  select("s").
+  out("attends").
+  where(neq("c")).
+  out("allocated").
+  where(eq("t")).
+  group().
+    by(select("s").by("name")).
+    by(group().by(select("t").by(valueMap("fromTime","toTime"))).
+               by(select("c").dedup().values("name").fold())).next()
+----
+
+[[appendix-d]]
+_In the "modern" graph, with a duplicate edge added, find the vertex pairs that have more
than one edge between them._
+
+[gremlin-groovy,modern]
+----
+g.V(1).as("a").V(3).addE("created").property("weight",0.4d).from("a").iterate()
+g.V(1).outE("created")
+g.V().as("a").
+  out().as("b").
+  groupCount().
+    by(select("a","b")).
+  unfold().
+  filter(select(values).is(gt(1))).
+  select(keys)
+----
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/3e54d897/docs/src/recipes/index.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/recipes/index.asciidoc b/docs/src/recipes/index.asciidoc
index 9c42f0f..f77b929 100644
--- a/docs/src/recipes/index.asciidoc
+++ b/docs/src/recipes/index.asciidoc
@@ -135,99 +135,4 @@ GitHub and JIRA are linked.  As mentioned earlier in this section, the
recipe wi
 committers prior to merging. This process may take several days to complete. We look forward
to receiving your
 submissions!
 
-Appendix
-========
-
-Many of the recipes are based on questions and answers provided on the gremlin-users mailing
list. This section
-contains a number of traversals from the mailing list that do not easily fit any particular
pattern (i.e. a recipe),
-but are nonetheless interesting and thus remain good tools for learning Gremlin.
-
-[[appendix-a]]
-_For each person in a "follows" graph, determine the number of followers and list their names._
-
-[gremlin-groovy]
-----
-g.addV('name','marko').as('marko').
-  addV('name','josh').as('josh').
-  addV('name','daniel').as('daniel').
-  addV('name','matthias').as('matthias').
-  addE('follows').from('josh').to('marko').
-  addE('follows').from('matthias').to('josh').
-  addE('follows').from('daniel').to('josh').
-  addE('follows').from('daniel').to('marko').iterate()
-g.V().as('p').
-  map(__.in('follows').values('name').fold()).
-  group().by(select('p').by('name')).
-          by(project('numFollowers','followers').
-               by(count(local)).by()).next()
-----
-
-[[appendix-b]]
-_In the "modern" graph, show each person, the software they worked on and the co-worker count
for the software and
-the names of those co-workers._
-
-[gremlin-groovy,modern]
-----
-g.V().hasLabel("person").as("p").
-  out("created").as("s").
-  map(__.in("created").
-    where(neq("p")).values("name").fold()).
-  group().by(select("p").by("name")).
-    by(group().by(select("s").by("name")).
-    by(project("numCoworkers","coworkers").
-         by(count(local)).by())).next()
-----
-
-[[appendix-c]]
-_Assuming a graph of students, classes and times, detect students who have a conflicting
schedule._
-
-[gremlin-groovy]
-----
-g.addV(label, "student", "name", "Pete").as("s1").
-  addV(label, "student", "name", "Joe").as("s2").
-  addV(label, "class", "name", "Java's GC").as("c1").
-  addV(label, "class", "name", "FP Principles").as("c2").
-  addV(label, "class", "name", "Memory Management in C").as("c3").
-  addV(label, "class", "name", "Memory Management in C++").as("c4").
-  addV(label, "timeslot", "date", "11/25/2016", "fromTime", "10:00", "toTime", "11:00").as("t1").
-  addV(label, "timeslot", "date", "11/25/2016", "fromTime", "11:00", "toTime", "12:00").as("t2").
-  addE("attends").from("s1").to("c1").
-  addE("attends").from("s1").to("c2").
-  addE("attends").from("s1").to("c3").
-  addE("attends").from("s1").to("c4").
-  addE("attends").from("s2").to("c2").
-  addE("attends").from("s2").to("c3").
-  addE("allocated").from("c1").to("t1").
-  addE("allocated").from("c1").to("t2").
-  addE("allocated").from("c2").to("t1").
-  addE("allocated").from("c3").to("t2").
-  addE("allocated").from("c4").to("t2").iterate()
-g.V().hasLabel("student").as("s").
-  out("attends").as("c").
-  out("allocated").as("t").
-  select("s").
-  out("attends").
-  where(neq("c")).
-  out("allocated").
-  where(eq("t")).
-  group().
-    by(select("s").by("name")).
-    by(group().by(select("t").by(valueMap("fromTime","toTime"))).
-               by(select("c").dedup().values("name").fold())).next()
-----
-
-[[appendix-d]]
-_In the "modern" graph, with a duplicate edge added, find the vertex pairs that have more
than one edge between them._
-
-[gremlin-groovy,modern]
-----
-g.V(1).as("a").V(3).addE("created").property("weight",0.4d).from("a").iterate()
-g.V(1).outE("created")
-g.V().as("a").
-  out().as("b").
-  groupCount().
-    by(select("a","b")).
-  unfold().
-  filter(select(values).is(gt(1))).
-  select(keys)
-----
\ No newline at end of file
+include::appendix.asciidoc[]
\ No newline at end of file


Mime
View raw message