# RelationalAI Python API Reference

This document outlines all of the functions, classes, and methods
in the public RelationalAI Python API.

## `relationalai`

The `relationalai` namespace contains classes for fundamental concepts, including the
[`Model`](./Model/README.md), [`Type`](./Type/README.md), [`Context`](./Context/README.md), and [`Producer`](./Producer/README.md) classes.

- [`Context`](./Context/README.md)
  - [`Context.__enter__()`](./Context/__enter__.md)
  - [`Context.__exit__()`](./Context/__exit__.md)
  - [`Context.__iter__()`](./Context/__iter__.md)
  - [`Context.model`](./Context/model.md)
  - [`Context.results`](./Context/results.md)
- [`ContextSelect`](./ContextSelect/README.md)
  - [`ContextSelect.__call__()`](./ContextSelect/__call__.md)
  - [`ContextSelect.__getattribute__()`](./ContextSelect/__getattribute__.md)
  - [`ContextSelect.add()`](./ContextSelect/add.md)
- [`Expression`](./Expression.md)
- [`Instance`](./Instance/README.md)
  - [`Instance.persist()`](./Instance/persist.md)
  - [`Instance.set()`](./Instance/set.md)
  - [`Instance.unpersist()`](./Instance/unpersist.md)
- [`InstanceProperty`](./InstanceProperty/README.md)
  - [`InstanceProperty.or_()`](./InstanceProperty/or_.md)
- [`Model`](./Model/README.md)
  - [`Model.found()`](./Model/found.md)
  - [`Model.name`](./Model/name.md)
  - [`Model.not_found()`](./Model/not_found.md)
  - [`Model.ordered_choice()`](./Model/ordered_choice.md)
  - [`Model.query()`](./Model/query.md)
  - [`Model.rule()`](./Model/rule.md)
  - [`Model.scope()`](./Model/scope.md)
  - [`Model.Type()`](./Model/Type.md)
  - [`Model.union()`](./Model/union.md)
- [`Producer`](./Producer/README.md)
  - [`Producer.__add__()`](./Producer/__add__.md)
  - [`Producer.__enter__()`](./Producer/__enter__.md)
  - [`Producer.__eq__()`](./Producer/__eq__.md)
  - [`Producer.__exit__()`](./Producer/__exit__.md)
  - [`Producer.__ge__()`](./Producer/__ge__.md)
  - [`Producer.__getattribute__()`](./Producer/__getattribute__.md)
  - [`Producer.__gt__()`](./Producer/__gt__.md)
  - [`Producer.__le__()`](./Producer/__le__.md)
  - [`Producer.__lt__()`](./Producer/__lt__.md)
  - [`Producer.__mul__()`](./Producer/__mul__.md)
  - [`Producer.__ne__()`](./Producer/__ne__.md)
  - [`Producer.__radd__()`](./Producer/__radd__.md)
  - [`Producer.__rmul__()`](./Producer/__rmul__.md)
  - [`Producer.__rsub__()`](./Producer/__rsub__.md)
  - [`Producer.__rtruediv__()`](./Producer/__rtruediv__.md)
  - [`Producer.__sub__()`](./Producer/__sub__.md)
  - [`Producer.__truediv__()`](./Producer/__truediv__.md)
- [`Property`](./Property.md)
- [`Type`](./Type/README.md)
  - [`Type.__call__()`](./Type/__call__.md)
  - [`Type.__or__()`](./Type/__or__.md)
  - [`Type.add()`](./Type/add.md)
  - [`Type.model`](./Type/model.md)
  - [`Type.name`](./Type/name.md)

## [`relationalai.std`](./std/README.md)

The `relationalai.std` namespace contains the RelationalAI Query Builder Standard Library.
This includes functions for performing [aggregations](./std/aggregates/)
as well as classes for creating and working with [graphs](./std/graphs.md).

- [`alias()`](./std/alias.md)
- [`Vars`](./std/Vars.md)

### [`relationalai.std.aggregates`](./std/aggregates/README.md)

- [`aggregates.avg()`](./std/aggregates/avg.md)
- [`aggregates.count()`](./std/aggregates/count.md)
- [`aggregates.max()`](./std/aggregates/max.md)
- [`aggregates.min()`](./std/aggregates/min.md)
- [`aggregates.rank_asc()`](./std/aggregates/rank_asc.md)
- [`aggregates.rank_desc()`](./std/aggregates/rank_desc.md)
- [`aggregates.sum()`](./std/aggregates/sum.md)

### [`relationalai.std.graphs`](./std/graphs/README.md)

- [`graphs.Compute`](./std/graphs/Compute/README.md)
  - [`graphs.Compute.betweenness_centrality()`](./std/graphs/Compute/betweeness_centrality.md)
  - [`graphs.Compute.cosine_similarity()`](./std/graphs/Compute/cosine_similarity.md)
  - [`graphs.Compute.degree()`](./std/graphs/Compute/degree.md)
  - [`graphs.Compute.degree_centrality()`](./std/graphs/Compute/degree_centrality.md)
  - [`graphs.Compute.eigenvector_centrality()`](./std/graphs/Compute/eigenvector_centrality.md)
  - [`graphs.Compute.label_propagation()`](./std/graphs/Compute/label_propagation.md)
  - [`graphs.Compute.louvain()`](./std/graphs/Compute/louvain.md)
  - [`graphs.Compute.pagerank()`](./std/graphs/Compute/pagerank.md)
  - [`graphs.Compute.weakly_connected_component()`](./std/graphs/Compute/weakly_connected_component.md)
- [`graphs.Edges`](./std/graphs/Edges/README.md)
  - [`graphs.Edges.add()`](./std/graphs/Edges/add.md)
  - [`graphs.Edges.extend()`](./std/graphs/Edges/extend.md)
- [`graphs.Graph`](./std/graphs/Graph/README.md)
  - [`graphs.Graph.compute`](./std/graphs/Graph/compute.md)
  - [`graphs.Graph.edges`](./std/graphs/Graph/edges.md)
  - [`graphs.Graph.fetch()`](./std/graphs/Graph/fetch.md)
  - [`graphs.Graph.id`](./std/graphs/Graph/id.md)
  - [`graphs.Graph.model`](./std/graphs/Graph/model.md)
  - [`graphs.Graph.nodes`](./std/graphs/Graph/nodes.md)
  - [`graphs.Graph.undirected`](./std/graphs/Graph/undirected.md)
  - [`graphs.Graph.visualize()`](./std/graphs/Graph/visualize.md)
- [`graphs.Nodes`](./std/graphs/Nodes/README.md)
  - [`graphs.Nodes.add()`](./std/graphs/Nodes/add.md)
  - [`graphs.Nodes.extend()`](./std/graphs/Nodes/extend.md)

## [`relationalai.clients`](./clients/README.md)

- [`clients.snowflake`](./clients/snowflake/README.md)
  - [`clients.snowflake.PrimaryKey`](./clients/snowflake/PrimaryKey.md)
  - [`clients.snowflake.Snowflake`](./clients/snowflake/Snowflake.md)
  - [`clients.snowflake.SnowflakeTable`](./clients/snowflake/SnowflakeTable/README.md)
    - [`clients.snowflake.SnowflakeTable.describe()`](./clients/snowflake/SnowflakeTable/describe.md)
    - [`clients.snowflake.SnowflakeTable.fqname()`](./clients/snowflake/SnowflakeTable/fqname.md)
    - [`clients.snowflake.SnowflakeTable.namespace()`](./clients/snowflake/SnowflakeTable/namespace.md)
