This is an automated email from the ASF dual-hosted git repository. spmallette pushed a commit to branch afd in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 66662db9dc5a32478df631aa146760d7356c3a2d Author: Stephen Mallette <[email protected]> AuthorDate: Fri Jul 24 18:31:26 2026 +0000 Add curated llms-summary descriptions to page-leading doc sections The llms.txt index previously derived each page's description by auto-extracting its first prose line, which produced truncated, mid-sentence, or low-context blurbs. This adds author-curated [llms-summary="..."] attributes to the ~71 sections that currently lead a split Markdown page, so llms.txt shows clean, specific one-line descriptions. The attribute is read only for llms.txt (emitted as a hidden Markdown comment) and never renders into the HTML or Markdown page body. Sections without a curated summary continue to fall back to the first-prose heuristic. Coverage: 70 of 71 page-leading sections annotated across reference, dev/io, dev/provider, dev/developer, dev/future, recipes, upgrade, and tutorials. The sole exception (tutorials/gremlin-language-variants) has no heading to attach to and falls back cleanly. Assisted-by: Claude Code:claude-opus-4-8 --- docs/src/dev/developer/development-environment.asciidoc | 1 + docs/src/dev/developer/for-committers.asciidoc | 2 ++ docs/src/dev/developer/index.asciidoc | 1 + docs/src/dev/developer/meetings.asciidoc | 1 + docs/src/dev/developer/release.asciidoc | 1 + docs/src/dev/future/index.asciidoc | 1 + docs/src/dev/io/graphson.asciidoc | 5 +++++ docs/src/dev/io/index.asciidoc | 1 + docs/src/dev/provider/gremlin-semantics.asciidoc | 4 ++++ docs/src/dev/provider/index.asciidoc | 6 ++++++ docs/src/recipes/connected-components.asciidoc | 1 + docs/src/recipes/index.asciidoc | 3 +++ docs/src/recipes/recommendation.asciidoc | 1 + docs/src/recipes/tree.asciidoc | 1 + docs/src/reference/gremlin-applications.asciidoc | 6 ++++++ docs/src/reference/gremlin-variants.asciidoc | 4 ++++ docs/src/reference/implementations-hadoop-start.asciidoc | 1 + docs/src/reference/implementations-intro.asciidoc | 1 + docs/src/reference/preface.asciidoc | 1 + docs/src/reference/the-graph.asciidoc | 1 + docs/src/reference/the-graphcomputer.asciidoc | 1 + docs/src/reference/the-traversal.asciidoc | 11 +++++++++++ docs/src/tutorials/getting-started/index.asciidoc | 1 + docs/src/tutorials/gremlins-anatomy/index.asciidoc | 1 + docs/src/tutorials/the-gremlin-console/index.asciidoc | 1 + docs/src/upgrade/index.asciidoc | 1 + docs/src/upgrade/release-3.0.x-incubating.asciidoc | 1 + docs/src/upgrade/release-3.1.x-incubating.asciidoc | 1 + docs/src/upgrade/release-3.2.x-incubating.asciidoc | 3 +++ docs/src/upgrade/release-3.3.x.asciidoc | 2 ++ docs/src/upgrade/release-3.4.x.asciidoc | 2 ++ docs/src/upgrade/release-3.5.x.asciidoc | 3 +++ docs/src/upgrade/release-3.6.x.asciidoc | 1 + docs/src/upgrade/release-3.7.x.asciidoc | 2 ++ 34 files changed, 74 insertions(+) diff --git a/docs/src/dev/developer/development-environment.asciidoc b/docs/src/dev/developer/development-environment.asciidoc index 0735c90063..7081ba0f2f 100644 --- a/docs/src/dev/developer/development-environment.asciidoc +++ b/docs/src/dev/developer/development-environment.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[development-environment]] +[llms-summary="Setting up a TinkerPop development environment: build prerequisites, Maven and Docker workflows, and how to build and test the code and documentation."] = Development Environment TinkerPop is a fairly large body of code spread across many modules and covering multiple programming languages. Despite diff --git a/docs/src/dev/developer/for-committers.asciidoc b/docs/src/dev/developer/for-committers.asciidoc index 3e03b9a1b1..172c06b965 100644 --- a/docs/src/dev/developer/for-committers.asciidoc +++ b/docs/src/dev/developer/for-committers.asciidoc @@ -16,6 +16,7 @@ KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. //// +[llms-summary="Guidelines for TinkerPop committers: the Review-then-Commit (RTC) process, commit conventions, branch and merge practices, and committer responsibilities."] = For Committers image::business-gremlin.png[width=400] @@ -652,6 +653,7 @@ that may be used as building blocks for your benchmarks; `AbstractBenchmarkBase` * `AbstractGraphMutateBenchmark` - extend when you are benchmarking graph mutation operations eg. `g.addV()`, `graph.addVertex()` [[rtc]] +[llms-summary="The Review-then-Commit (RTC) process TinkerPop uses for changes: how contributions are proposed, reviewed, voted on, and merged."] == Review then Commit Code modifications must go through a link:http://www.apache.org/foundation/glossary.html#ReviewThenCommit[review-then-commit] (RTC) diff --git a/docs/src/dev/developer/index.asciidoc b/docs/src/dev/developer/index.asciidoc index 1eb4e046a3..25ffc0616e 100644 --- a/docs/src/dev/developer/index.asciidoc +++ b/docs/src/dev/developer/index.asciidoc @@ -25,6 +25,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="Documentation for TinkerPop contributors and committers: setting up a development environment, contribution process, release process, governance, and community meetings."] = Developer Documentation This document contains information for TinkerPop developers, contributors, and community members. It focuses on diff --git a/docs/src/dev/developer/meetings.asciidoc b/docs/src/dev/developer/meetings.asciidoc index 0762b222de..cefa532cd6 100644 --- a/docs/src/dev/developer/meetings.asciidoc +++ b/docs/src/dev/developer/meetings.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[meetings]] +[llms-summary="Records and scheduling of TinkerPop community meetings, where project direction and contributions are discussed."] = Meetings == November 23, 2015 diff --git a/docs/src/dev/developer/release.asciidoc b/docs/src/dev/developer/release.asciidoc index 710cad1abd..37922aea18 100644 --- a/docs/src/dev/developer/release.asciidoc +++ b/docs/src/dev/developer/release.asciidoc @@ -16,6 +16,7 @@ KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. //// +[llms-summary="The step-by-step process for cutting an official Apache TinkerPop release, including building, staging, voting, and publishing artifacts and documentation."] = Release Process This document describes the steps required to release a version of TinkerPop. The release is handled by a "release diff --git a/docs/src/dev/future/index.asciidoc b/docs/src/dev/future/index.asciidoc index 01d03d468b..0e2bd1086d 100644 --- a/docs/src/dev/future/index.asciidoc +++ b/docs/src/dev/future/index.asciidoc @@ -25,6 +25,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="Forward-looking design documents and proposals for future directions of Apache TinkerPop and the Gremlin language."] = TinkerPop Future This document offers a rough view at what features can be expected from future releases and catalogs proposals for diff --git a/docs/src/dev/io/graphson.asciidoc b/docs/src/dev/io/graphson.asciidoc index 5b500c0118..5194f4b6cd 100644 --- a/docs/src/dev/io/graphson.asciidoc +++ b/docs/src/dev/io/graphson.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[graphson]] +[llms-summary="The JSON-based GraphSON serialization format: its purpose, the differences across versions 1.0/2.0/3.0, and how graphs and types are represented."] = GraphSON image:gremlin-graphson.png[width=350,float=left] GraphSON is a JSON-based format that is designed for human readable @@ -797,6 +798,7 @@ The following `ResponseMessage` is a typical example of the typical successful r ---- [[graphson-2d0]] +[llms-summary="GraphSON 2.0: the type-embedding format introduced in TinkerPop 3.2.2, with per-type sample encodings for graph structure and request/response messages."] == Version 2.0 Version 2.0 of GraphSON was first introduced on TinkerPop 3.2.2. It was designed to be less tied to @@ -2974,6 +2976,7 @@ The following `Bytecode` example represents the traversal of `g.V().hasLabel('pe ---- +[llms-summary="The GraphSON 2.0 encodings of Gremlin Server RequestMessage types (session eval, sessionless eval, authentication response, and their aliased forms)."] === RequestMessage ==== Authentication Response @@ -3512,6 +3515,7 @@ The following example is a `ZoneOffset` of three hours, six minutes, and nine se ---- [[graphson-3d0]] +[llms-summary="GraphSON 3.0: the current format (TinkerPop 3.3.0+, application/vnd.gremlin-v3.0+json), with per-type sample encodings for graph structure and request/response messages."] == Version 3.0 Version 3.0 of GraphSON was first introduced on TinkerPop 3.3.0 and is represented by the `application/vnd.gremlin-v3.0+json` @@ -5658,6 +5662,7 @@ The following `ResponseMessage` is a typical example of the typical successful r ---- +[llms-summary="GraphSON 3.0 extended types: the additional data types (e.g. temporal and numeric types) enabled by registering the separate GraphSONXModuleV3d0 module."] === Extended Note that the "extended" types require the addition of the separate `GraphSONXModuleV3d0` module as follows: diff --git a/docs/src/dev/io/index.asciidoc b/docs/src/dev/io/index.asciidoc index f2defe690d..d3fba24e32 100644 --- a/docs/src/dev/io/index.asciidoc +++ b/docs/src/dev/io/index.asciidoc @@ -25,6 +25,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="Details of TinkerPop's graph serialization formats — GraphML, GraphSON, Gryo, and GraphBinary — with format samples and implementation notes for producing and consuming graphs."] = IO Reference image:gremlin-io2.png[width=300] diff --git a/docs/src/dev/provider/gremlin-semantics.asciidoc b/docs/src/dev/provider/gremlin-semantics.asciidoc index 4f97df5552..df560f37b7 100644 --- a/docs/src/dev/provider/gremlin-semantics.asciidoc +++ b/docs/src/dev/provider/gremlin-semantics.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[gremlin-semantics]] +[llms-summary="The formal semantics of the Gremlin language: the type system, traverser model, and the precise expected behavior of each step, as a specification for providers."] = Gremlin Semantics image:tinkerpop-meeting-room.png[] @@ -519,6 +520,7 @@ The following table maps the notions proposed above to the various `P` operators link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/semantics/Equality.feature[Equality Tests], link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-test/src/main/resources/org/apache/tinkerpop/gremlin/test/features/semantics/Comparability.feature[Comparability Tests] +[llms-summary="Per-step semantic definitions: the precise input/output behavior each Gremlin step must exhibit, used to verify provider implementations for correctness."] == Steps While TinkerPop has a full test suite for validating functionality of Gremlin, tests alone aren't always exhaustive or @@ -734,6 +736,7 @@ link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-core/src/main/java/o link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/structure/service/ServiceRegistry.java[ServiceRegistry], link:https://tinkerpop.apache.org/docs/x.y.z/reference/#call-step[reference] +[llms-summary="The formal semantics of the combine() step: its exact expected behavior when merging an incoming list with a supplied list argument."] [[combine-step]] === combine() @@ -1584,6 +1587,7 @@ See: link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-core/src/main/j link:https://github.com/apache/tinkerpop/tree/x.y.z/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/map/SplitLocalStep.java[source (local)], link:https://tinkerpop.apache.org/docs/x.y.z/reference/#split-step[reference] +[llms-summary="The formal semantics of the substring() step: its exact expected behavior extracting a portion of a string by index."] [[substring-step]] === substring() diff --git a/docs/src/dev/provider/index.asciidoc b/docs/src/dev/provider/index.asciidoc index c77d67c2bb..376bc22e83 100644 --- a/docs/src/dev/provider/index.asciidoc +++ b/docs/src/dev/provider/index.asciidoc @@ -25,6 +25,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="Provider documentation overview: what graph system providers, graph driver providers, and language variant providers must implement to integrate with TinkerPop."] = Introduction image:tinkerpop-cityscape.png[] @@ -40,6 +41,7 @@ section for free, but those who develop their own engine or extend upon the cert section for the details required for a consistent Gremlin experience. [[providers]] +[llms-summary="Guidance for those building on TinkerPop: implementing a graph system, a driver, or a language variant, and validating it against the test suite."] = Provider Documentation TinkerPop exposes a set of interfaces, protocols, and tests that make it possible for third-parties to build @@ -57,6 +59,7 @@ This document attempts to address the needs of the different providers that have * Graph Plugin Provider [[graph-system-provider-requirements]] +[llms-summary="What a graph system provider must implement: the structure/process APIs, OLTP and OLAP support, and how to validate the implementation with the Gremlin test suite."] == Graph System Provider Requirements image:tinkerpop-enabled.png[width=140,float=left] At the core of TinkerPop 3.x is a Java API. The implementation of this @@ -625,6 +628,7 @@ Simply provide a `InputFormat` and `OutputFormat` that can be referenced by a `H in the link:https://tinkerpop.apache.org/docs/x.y.z/reference/#clonevertexprogram[Reference Documentation]. [[validating-with-gremlin-test]] +[llms-summary="Using the gremlin-test suite to validate a graph implementation: the structure and process test standards and how to opt in or out of feature-gated tests."] === Validating with Gremlin-Test image:gremlin-edumacated.png[width=225] @@ -962,6 +966,7 @@ consider that doing so introduces some greater risk for code breaks on upgrades base. As steps are more internal features of TinkerPop, they might be subject to breaking API and behavioral changes that would be less likely to be accepted by more public facing interfaces. +[llms-summary="What a driver provider must implement to connect a language to Gremlin Server: the wire protocol, serialization formats, and connection handling."] == Graph Driver Provider Requirements image::gremlin-server-protocol.png[width=325] @@ -1355,6 +1360,7 @@ providers as part of the agreement between client and server. [[gremlin-plugins]] +[llms-summary="How to author Gremlin Console/Server plugins as a provider: the plugin interface, dependency management, and registering custom bindings and DSLs."] == Gremlin Plugins image:gremlin-plugin.png[width=125] diff --git a/docs/src/recipes/connected-components.asciidoc b/docs/src/recipes/connected-components.asciidoc index 0867a34db1..33be3551ea 100644 --- a/docs/src/recipes/connected-components.asciidoc +++ b/docs/src/recipes/connected-components.asciidoc @@ -22,6 +22,7 @@ under the License. // @author Marc de Lignie [[connected-components]] +[llms-summary="Recipe for finding weakly and strongly connected components in a graph with Gremlin, in both OLTP and OLAP form."] == Connected Components Gremlin can be used to find link:https://en.wikipedia.org/wiki/Connected_component_(graph_theory)[connected components] diff --git a/docs/src/recipes/index.asciidoc b/docs/src/recipes/index.asciidoc index 5537c53e15..7a8b400deb 100644 --- a/docs/src/recipes/index.asciidoc +++ b/docs/src/recipes/index.asciidoc @@ -25,6 +25,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="A collection of practical Gremlin traversal patterns and solutions to common graph problems, with runnable examples."] = Recipes image:gremlin-chef.png[width=120,float=left] All programming languages tend to have @@ -37,6 +38,7 @@ Recipes assume general familiarity with Gremlin and the Apache TinkerPop™ stac link:https://tinkerpop.apache.org/docs/x.y.z/tutorials/getting-started[Getting Started] tutorial and the link:https://tinkerpop.apache.org/docs/x.y.z/tutorials/the-gremlin-console/[The Gremlin Console] tutorial. +[llms-summary="Recipes covering common traversal tasks — between-vertices patterns, centrality, collections, connected components, cycle detection, pagination, recommendation, shortest path, trees, and more."] = Traversal Recipes include::between-vertices.asciidoc[] @@ -88,6 +90,7 @@ include::style-guide.asciidoc[] include::traversal-component-reuse.asciidoc[] [[contributing]] +[llms-summary="How to contribute a new recipe to the TinkerPop documentation, including the expected structure and testing conventions."] = How to Contribute a Recipe Recipes are generated under the same system as all TinkerPop documentation and is stored directly in the source code diff --git a/docs/src/recipes/recommendation.asciidoc b/docs/src/recipes/recommendation.asciidoc index 5f6d36202d..08d338415c 100644 --- a/docs/src/recipes/recommendation.asciidoc +++ b/docs/src/recipes/recommendation.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[recommendation]] +[llms-summary="Recipe for building recommendations with Gremlin using collaborative-filtering-style traversals over a graph."] == Recommendation image:gremlin-recommendation.png[float=left,width=180]One of the more common use cases for a graph database is the diff --git a/docs/src/recipes/tree.asciidoc b/docs/src/recipes/tree.asciidoc index 8cc5cda9a5..124ba95480 100644 --- a/docs/src/recipes/tree.asciidoc +++ b/docs/src/recipes/tree.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[tree]] +[llms-summary="Recipe for working with tree-shaped data in Gremlin: building, traversing, and extracting hierarchical structures from a graph."] == Tree image:gremlin-tree.png[width=280] diff --git a/docs/src/reference/gremlin-applications.asciidoc b/docs/src/reference/gremlin-applications.asciidoc index cf88e2f40d..1cc494ad30 100644 --- a/docs/src/reference/gremlin-applications.asciidoc +++ b/docs/src/reference/gremlin-applications.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[gremlin-applications]] +[llms-summary="The applications that ship with TinkerPop: the Gremlin Console for interactive use and Gremlin Server for exposing graphs to remote clients."] = Gremlin Applications Gremlin applications represent tools that are built on top of the core APIs to help expose common functionality to @@ -447,6 +448,7 @@ v[6] ---- [[gremlin-server]] +[llms-summary="Gremlin Server exposes graphs to remote clients over WebSocket/HTTP: how to run it, its request lifecycle, serializers, and connecting from drivers."] == Gremlin Server image:gremlin-server.png[width=400,float=right] Gremlin Server provides a way to remotely execute Gremlin against one @@ -960,6 +962,7 @@ quite possible that such a script will generate `OutOfMemoryError` exceptions on WebSocket configuration, which supports streaming, if that type of use case is required. [[server-configuring]] +[llms-summary="Reference for Gremlin Server's YAML configuration options: graphs, serializers, channelizers, thread pools, SSL, and metrics."] === Configuring The `gremlin-server.sh` file serves multiple purposes. It can be used to "install" dependencies to the Gremlin @@ -1384,6 +1387,7 @@ Start the service with `systemctl start gremlin-server` [[security]] +[llms-summary="Securing Gremlin Server: authentication (SASL/PLAIN, Kerberos), authorization, TLS/SSL, and sandboxing script execution."] === Security image:gremlin-server-secure.png[width=175,float=right] Gremlin Server provides for several features that aid in the @@ -2133,6 +2137,7 @@ A final thought on the topic of `GroovyCompilerGremlinPlugin` implementation is can fine tune the Groovy compilation process. Read more about compilation customization in the link:http://docs.groovy-lang.org/latest/html/documentation/#compilation-customizers[Groovy Documentation]. +[llms-summary="Recommended practices for working with Gremlin Server, including connection handling, parameterized scripts, and result serialization."] === Best Practices The following sections define best practices for working with Gremlin Server. @@ -2722,6 +2727,7 @@ $ docker run tinkerpop/gremlin-server:x.y.z conf/gremlin-server-secure.yaml ---- [[gremlin-plugins]] +[llms-summary="Extending the Gremlin Console and Server with plugins that add dependencies, DSLs, and bindings; covers the plugins that ship with TinkerPop."] == Gremlin Plugins image:gremlin-plugin.png[width=125] diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc index e3ff08060c..9db40db8cd 100644 --- a/docs/src/reference/gremlin-variants.asciidoc +++ b/docs/src/reference/gremlin-variants.asciidoc @@ -23,6 +23,7 @@ anchor:gremlin-variants[] // Scala 2.11/2.12 (and related) conflicts those plugins introduce. [gremlin-docs-plugins-exclude="neo4j-gremlin,spark-gremlin,hadoop-gremlin"] [[gremlin-drivers-variants]] +[llms-summary="How Gremlin is embedded in host programming languages (Java, Groovy, Python, JavaScript, .NET, Go) and how language variants and drivers connect to a remote server."] = Gremlin Drivers and Variants image::gremlin-house-of-mirrors.png[width=1024] @@ -641,6 +642,7 @@ time zone offset of UTC(+00:00): anchor:connecting-via-remotegraph[] anchor:connecting-via-java[] [[gremlin-java]] +[llms-summary="Using Gremlin from Java: the reference implementation of the language, GraphTraversalSource construction, and connecting to a remote Gremlin Server."] == Gremlin-Java image:gremlin-java-drawing.png[width=130,float=right] Apache TinkerPop's Gremlin-Java implements Gremlin within the @@ -1488,6 +1490,7 @@ java -cp target/run-examples-shaded.jar examples.ModernTraversals ---- [[gremlin-javascript]] +[llms-summary="Using Gremlin from JavaScript/Node.js: installing the gremlin package, building traversals, and connecting to a remote Gremlin Server."] == Gremlin-JavaScript image:gremlin-js.png[width=130,float=right] Apache TinkerPop's Gremlin-JavaScript implements Gremlin within the @@ -2453,6 +2456,7 @@ dotnet run --project ModernTraversals ---- [[gremlin-python]] +[llms-summary="Using Gremlin from Python: installing gremlinpython, building traversals, Pythonic syntax differences, and connecting to a remote Gremlin Server."] == Gremlin-Python image:gremlin-python-drawing.png[width=130,float=right] Apache TinkerPop's Gremlin-Python implements Gremlin within diff --git a/docs/src/reference/implementations-hadoop-start.asciidoc b/docs/src/reference/implementations-hadoop-start.asciidoc index 686eaaf47e..9a6a6f4f68 100644 --- a/docs/src/reference/implementations-hadoop-start.asciidoc +++ b/docs/src/reference/implementations-hadoop-start.asciidoc @@ -20,6 +20,7 @@ under the License. // flat classpath, so exclude neo4j-gremlin to restart the console without Neo4j's jars. [gremlin-docs-plugins-exclude="neo4j-gremlin"] [[hadoop-gremlin]] +[llms-summary="Running Gremlin OLAP over Hadoop: HadoopGraph, graph input/output formats, and executing traversals with SparkGraphComputer."] == Hadoop-Gremlin [source,xml] diff --git a/docs/src/reference/implementations-intro.asciidoc b/docs/src/reference/implementations-intro.asciidoc index b73a300e25..e25b6f3c2c 100644 --- a/docs/src/reference/implementations-intro.asciidoc +++ b/docs/src/reference/implementations-intro.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[implementations]] +[llms-summary="Graph system and processor implementations that ship with TinkerPop, including TinkerGraph, Neo4j, and the Hadoop/Spark OLAP engines."] = Implementations image::gremlin-racecar.png[width=325] diff --git a/docs/src/reference/preface.asciidoc b/docs/src/reference/preface.asciidoc index 5e6339a722..ea534938a5 100644 --- a/docs/src/reference/preface.asciidoc +++ b/docs/src/reference/preface.asciidoc @@ -16,6 +16,7 @@ KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. //// +[llms-summary="The main TinkerPop reference guide: the structure API, the Gremlin traversal language and its step catalog, OLAP with GraphComputer, the Gremlin applications, language variants, and provided implementations."] = TinkerPop Documentation [[preface]] diff --git a/docs/src/reference/the-graph.asciidoc b/docs/src/reference/the-graph.asciidoc index e1303c843b..08a78ba770 100644 --- a/docs/src/reference/the-graph.asciidoc +++ b/docs/src/reference/the-graph.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[graph]] +[llms-summary="The structure API: graphs, vertices, edges, properties, meta- and multi-properties, transactions, variables, and the features a graph implementation can support."] = The Graph image::gremlin-standing.png[width=125] diff --git a/docs/src/reference/the-graphcomputer.asciidoc b/docs/src/reference/the-graphcomputer.asciidoc index eebe329b4f..b18801897c 100644 --- a/docs/src/reference/the-graphcomputer.asciidoc +++ b/docs/src/reference/the-graphcomputer.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[graphcomputer]] +[llms-summary="OLAP graph processing with GraphComputer: running VertexPrograms (e.g. PageRank, PeerPressure) and MapReduce jobs for whole-graph analytics."] = The GraphComputer image:graphcomputer-puffers.png[width=350,float=right] TinkerPop provides two primary means of interacting with a diff --git a/docs/src/reference/the-traversal.asciidoc b/docs/src/reference/the-traversal.asciidoc index 2d0251bd3a..101a60f9c9 100644 --- a/docs/src/reference/the-traversal.asciidoc +++ b/docs/src/reference/the-traversal.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// [[traversal]] +[llms-summary="The core of Gremlin: how traversals are constructed from steps, the traverser model, and the catalog of graph traversal steps used to query and mutate graphs."] = The Traversal image::gremlin-running.png[width=125] @@ -389,6 +390,7 @@ Spawn steps, which actually yield a traversal, typically match the names of exis * `V()` - Reads vertices from the graph to start the traversal (<<graph-step, example>>). [[graph-traversal-steps]] +[llms-summary="Reference catalog of the individual Gremlin steps (map, filter, sideEffect, branch, and more) with syntax and examples for each."] == Graph Traversal Steps Gremlin steps are chained together to produce the actual traversal and are triggered by way of <<start-steps,start steps>> @@ -1152,6 +1154,7 @@ g.V().coin(1.0) link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#coin(double)++[`coin(double)`] [[combine-step]] +[llms-summary="The combine() step (map) merges the elements of the incoming list traverser with a provided list argument into a single list."] === Combine Step The `combine()`-step (*map*) combines the elements of the incoming list traverser and the provided list argument into @@ -1872,6 +1875,7 @@ link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gre link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#groupCount(java.lang.String)++[`groupCount(String)`] [[has-step]] +[llms-summary="The has() step (filter) and its variants (hasLabel, hasId, hasKey, hasValue, hasNot) filter vertices, edges, and properties by label, key, and value."] === Has Step image::has-step.png[width=670] @@ -2211,6 +2215,7 @@ link:https://tinkerpop.apache.org/docs/x.y.z/upgrade/#graphml-format[Upgrade Doc anchor:graphson-reader-writer[] [[graphson]] +[llms-summary="How the io() step reads and writes graphs in the JSON-based GraphSON format, including its use for import and export."] ==== GraphSON image:gremlin-graphson.png[width=350,float=left] GraphSON is a link:http://json.org/[JSON]-based format extended @@ -2473,6 +2478,7 @@ The `map()` step maps the traverser from the current object to the next step in link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#map(org.apache.tinkerpop.gremlin.process.traversal.Traversal)++[`map(Traversal)`] [[match-step]] +[llms-summary="The match() step (map) provides declarative, pattern-matching graph querying by combining traversal fragments bound to shared variables."] === Match Step The `match()`-step (*map*) provides a more link:http://en.wikipedia.org/wiki/Declarative_programming[declarative] @@ -3244,6 +3250,7 @@ link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gre link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/Traversal.html#iterate()++[`iterate()`] [[not-step]] +[llms-summary="The not() step (filter) removes traversers for which the provided sub-traversal returns a result, negating a pattern."] === Not Step The `not()`-step (*filter*) removes objects from the traversal stream when the traversal provided as an argument @@ -4047,6 +4054,7 @@ link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gre link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#rTrim(org.apache.tinkerpop.gremlin.process.traversal.Scope)++[`rTrim(Scope)`] [[sack-step]] +[llms-summary="The sack() step (sideEffect or map) reads and writes a per-traverser local data structure (the sack), used to carry and accumulate values along a traversal."] === Sack Step image:gremlin-sacks-running.png[width=175,float=right] A traverser can contain a local data structure called a "sack". @@ -4607,6 +4615,7 @@ List<Vertex> vertices = g.V(v).out().toList(); link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversal.html#subgraph(java.lang.String)++[`subgraph(String)`] [[substring-step]] +[llms-summary="The substring() step (map) extracts a portion of an incoming string by start (and optional end) index."] === Substring Step The `substring()`-step (*map*) returns a substring with a 0-based start index (inclusive) and optionally an end index (exclusive) specified. If the start index is negative then it will begin at the specified index counted from the end of the string, or 0 if exceeding the string length. @@ -4756,6 +4765,7 @@ link:++https://tinkerpop.apache.org/javadocs/x.y.z/core/org/apache/tinkerpop/gre `<<emit-step,emit()>>`, `<<repeat-step,repeat()>>`, `<<until-step,until()>>` [[to-step]] +[llms-summary="The to() step-modulator supplies direction and destination arguments to steps like from(), addE(), and path-oriented steps."] === To Step The `to()`-step is not an actual step, but instead is a "step-modulator" similar to <<as-step,`as()`>> and @@ -5535,6 +5545,7 @@ g.V().out().out().path().by('name'). <2> The length-3 paths have their objects transformed by a lambda-less step and a traversal lambda. (*good*) [[traversalstrategy]] +[llms-summary="How TraversalStrategy implementations analyze and rewrite traversals at compile time (decoration, optimization, finalization, verification) and how to author custom strategies."] == TraversalStrategy image:traversal-strategy.png[width=125,float=right] A `TraversalStrategy` analyzes a `Traversal` and, if the traversal diff --git a/docs/src/tutorials/getting-started/index.asciidoc b/docs/src/tutorials/getting-started/index.asciidoc index e9233071da..bece462589 100644 --- a/docs/src/tutorials/getting-started/index.asciidoc +++ b/docs/src/tutorials/getting-started/index.asciidoc @@ -24,6 +24,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="A beginner's tutorial introducing graphs, vertices, edges, and basic Gremlin traversals to get started with Apache TinkerPop."] == Getting Started link:https://tinkerpop.apache.org[Apache TinkerPop™] is an open source Graph Computing Framework. Within itself, TinkerPop diff --git a/docs/src/tutorials/gremlins-anatomy/index.asciidoc b/docs/src/tutorials/gremlins-anatomy/index.asciidoc index a2e08878e4..eec908a103 100644 --- a/docs/src/tutorials/gremlins-anatomy/index.asciidoc +++ b/docs/src/tutorials/gremlins-anatomy/index.asciidoc @@ -24,6 +24,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="A tutorial breaking down the anatomy of a Gremlin traversal — its steps, modulators, tokens, and how they compose — to build a deeper understanding of the language."] == Gremlin's Anatomy image:gremlin-anatomy.png[width=160,float=left]The Gremlin language is typically described by the individual diff --git a/docs/src/tutorials/the-gremlin-console/index.asciidoc b/docs/src/tutorials/the-gremlin-console/index.asciidoc index 935ab7904e..ac93561dfb 100644 --- a/docs/src/tutorials/the-gremlin-console/index.asciidoc +++ b/docs/src/tutorials/the-gremlin-console/index.asciidoc @@ -24,6 +24,7 @@ image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] *x.y.z* +[llms-summary="A tutorial on using the Gremlin Console: the interactive REPL for working with graphs, running traversals, and connecting to remote servers."] == The Gremlin Console In link:https://tinkerpop.apache.org/docs/x.y.z/tutorials/getting-started/#_the_first_five_minutes["The First Five Minutes"] diff --git a/docs/src/upgrade/index.asciidoc b/docs/src/upgrade/index.asciidoc index 16b746a557..9233ca78c4 100644 --- a/docs/src/upgrade/index.asciidoc +++ b/docs/src/upgrade/index.asciidoc @@ -23,6 +23,7 @@ under the License. image::apache-tinkerpop-logo.png[width=500,link="https://tinkerpop.apache.org"] +[llms-summary="Version-by-version upgrade notes for Apache TinkerPop, covering breaking changes, new features, and migration guidance for each release line from 3.0 onward."] = TinkerPop Upgrade Information This document helps users of Apache TinkerPop™ to understand the changes that come with each software release. It diff --git a/docs/src/upgrade/release-3.0.x-incubating.asciidoc b/docs/src/upgrade/release-3.0.x-incubating.asciidoc index ef8e735276..ea6679d69a 100644 --- a/docs/src/upgrade/release-3.0.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.0.x-incubating.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.0.x release line: the initial 3.x releases, their features, and migration guidance."] = TinkerPop 3.0.0 image::gremlin-hindu.png[width=225] diff --git a/docs/src/upgrade/release-3.1.x-incubating.asciidoc b/docs/src/upgrade/release-3.1.x-incubating.asciidoc index 47012deb79..dde37b9991 100644 --- a/docs/src/upgrade/release-3.1.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.1.x-incubating.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.1.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.1.0 image::gremlin-gangster.png[width=225] diff --git a/docs/src/upgrade/release-3.2.x-incubating.asciidoc b/docs/src/upgrade/release-3.2.x-incubating.asciidoc index 32a6119182..02a9c09d4c 100644 --- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc +++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.2.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.2.0 image::nine-inch-gremlins.png[width=225] @@ -905,6 +906,7 @@ Base64 encoded string however as the old approach will likely be removed in the See: link:https://issues.apache.org/jira/browse/TINKERPOP-1600[TINKERPOP-1600] +[llms-summary="Upgrade notes specific to the TinkerPop 3.2.3 release: its changes and changelog."] == TinkerPop 3.2.3 *Release Date: October 17, 2016* @@ -1457,6 +1459,7 @@ See: link:https://issues.apache.org/jira/browse/TINKERPOP-1293[TINKERPOP-1293] The method signatures of `get_g_VXlistXv1_v2_v3XX_name` and `get_g_VXlistX1_2_3XX_name` of `VertexTest` were changed to take arguments for the `Traversal` to be constructed by extending classes. +[llms-summary="Upgrade notes specific to the TinkerPop 3.2.0 release: its breaking changes, new features, and changelog."] == TinkerPop 3.2.0 *Release Date: Release Date: April 8, 2016* diff --git a/docs/src/upgrade/release-3.3.x.asciidoc b/docs/src/upgrade/release-3.3.x.asciidoc index ea862ef553..7ec4742cf1 100644 --- a/docs/src/upgrade/release-3.3.x.asciidoc +++ b/docs/src/upgrade/release-3.3.x.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.3.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.3.0 image::gremlin-mozart.png[width=225] @@ -756,6 +757,7 @@ information, the provider could then assign the right `IoRegistry` to match that See: link:https://issues.apache.org/jira/browse/TINKERPOP-1767[TINKERPOP-1767] +[llms-summary="Upgrade notes specific to the TinkerPop 3.3.0 release: its breaking changes, new features, and changelog."] == TinkerPop 3.3.0 *Release Date: August 21, 2017* diff --git a/docs/src/upgrade/release-3.4.x.asciidoc b/docs/src/upgrade/release-3.4.x.asciidoc index 4e8c09a4a0..b010c74d4b 100644 --- a/docs/src/upgrade/release-3.4.x.asciidoc +++ b/docs/src/upgrade/release-3.4.x.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.4.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.4.0 image::avant-gremlin.png[width=225] @@ -955,6 +956,7 @@ of a message. Additionally, the unused parameter was removed from `ResponseMessa See: link:https://issues.apache.org/jira/browse/TINKERPOP-2161[TINKERPOP-2161] +[llms-summary="Upgrade notes specific to the TinkerPop 3.4.0 release: its breaking changes, new features, and changelog."] == TinkerPop 3.4.0 *Release Date: January 2, 2019* diff --git a/docs/src/upgrade/release-3.5.x.asciidoc b/docs/src/upgrade/release-3.5.x.asciidoc index fd5a4f5d55..51d7773c51 100644 --- a/docs/src/upgrade/release-3.5.x.asciidoc +++ b/docs/src/upgrade/release-3.5.x.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.5.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.5.0 image::gremlin-sleeping-beauty.png[width=225] @@ -587,6 +588,7 @@ a worthwhile change to take, so as to help make this error more clear when it ar See: link: https://issues.apache.org/jira/browse/TINKERPOP-2616[TINKERPOP-2616] +[llms-summary="Upgrade notes specific to the TinkerPop 3.5.0 release: its breaking changes, new features, and changelog."] == TinkerPop 3.5.0 *Release Date: May 3, 2021* @@ -1348,6 +1350,7 @@ link:https://issues.apache.org/jira/browse/TINKERPOP-2273[TINKERPOP-2273], link:https://issues.apache.org/jira/browse/TINKERPOP-2455[TINKERPOP-2455], link:https://tinkerpop.apache.org/docs/3.5.0/upgrade/#_ssl_security[3.2.10 Upgrade Documentation for SSL] +[llms-summary="Provider-facing upgrade notes for TinkerPop 3.5.0: changes graph system and driver providers must account for, including server authorization and strategy changes."] === Upgrading for Providers ==== Graph System Providers diff --git a/docs/src/upgrade/release-3.6.x.asciidoc b/docs/src/upgrade/release-3.6.x.asciidoc index 0b48f5b5b5..025421db6c 100644 --- a/docs/src/upgrade/release-3.6.x.asciidoc +++ b/docs/src/upgrade/release-3.6.x.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.6.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.6.0 image::gremlin-victorian.png[width=185] diff --git a/docs/src/upgrade/release-3.7.x.asciidoc b/docs/src/upgrade/release-3.7.x.asciidoc index 4fa1a36cc7..2c8f82cade 100644 --- a/docs/src/upgrade/release-3.7.x.asciidoc +++ b/docs/src/upgrade/release-3.7.x.asciidoc @@ -17,6 +17,7 @@ specific language governing permissions and limitations under the License. //// +[llms-summary="Upgrade notes for the TinkerPop 3.7.x release line: breaking changes, new features, and provider migration guidance across its releases."] = TinkerPop 3.7.0 image::gremlin-zamfir.png[width=185] @@ -790,6 +791,7 @@ Added a new `@InsertionOrderingRequired` tag which signifies Gherkin feature tes predictably returning results (vertices, edges, properties) in the same order in which they were inserted into the graph. These tests should be skipped by any graph which does not guarantee such ordering. +[llms-summary="Upgrade notes specific to the TinkerPop 3.7.0 release: its breaking changes, new features, and changelog."] == TinkerPop 3.7.0 *Release Date: July 31, 2023*
