• Products
    Services
    Database
    Explore the capabilities of TypeDB
    Enterprise
    Take full control of TypeDB
    Community Edition
    The open-source version of TypeDB
    Platform
    Cloud
    Deploy in a hosted cloud environment
    Tools
    Studio
    Work with a beautiful IDE
    Console
    Develop with a powerful CLI
    Driver SDKs
    Build with native language drivers
    • Why TypeDB?
      Learn more
    • Try cloud free
      Launch
    • Pricing and plans
      View pricing
  • Resources
    Learn
    Documentation
    Read the docs
    Get started
    Get up and running with TypeDB
    Examples
    Try practical examples & use cases
    Content
    Blogs
    Our technical developer blog
    Videos
    Be sure to like and subscribe
    Research
    Academic research papers
    Startup program
    Are you a builder or breaker?
    Support
    Enterprise and community support
  • Pricing
    4k
  • Sign in
  • Start building

Docs Home

Ask TypeDB AI
TypeDB 3.x (current)
  • Home

    • What is TypeDB?
    • Why TypeDB?
    • Learning journey
    • Install
      • TypeDB Cloud
      • TypeDB Enterprise
      • TypeDB Community Edition
      • Studio
      • Console CLI
      • TypeDB Drivers
    • Get started
      • Overview
      • Setup
      • Create a schema
      • Create data
      • Query composition
  • Examples

    • Social Network Application
    • Use Cases
      • Robotics
      • IAM
      • Cybersecurity
  • Core Concepts

    • TypeDB
      • Overview
      • Connections
      • Databases
      • Transactions
      • CRUD
      • Users
      • Errors
      • Vertical Scaling
      • Horizontal Scaling
    • TypeQL
      • Entities, Relations, Attributes
      • Constraining Data
      • Schema & Data
      • Query Variables and Patterns
      • Query Clauses & Pipelining
      • Queries as Functions
      • Advanced: Invalid Patterns
      • Glossary
    • Drivers
      • Overview
      • Connections
      • Users & Authentication
      • Transactions
      • Queries
      • Best Practices
  • Tools

    • TypeDB Studio
    • TypeDB Console
    • IDE Plugins
    • TypeDB Cloud API
  • Maintenance & Operation

    • TypeDB Upgrades
    • TypeDB Backups
    • TypeDB Configuration
    • TypeDB In-flight Encryption
    • Database Export & Import
    • Troubleshooting
      • Installation
      • Connecting
      • Stopping queries
      • Optimizing queries
      • Debugging queries
  • Reference

    • TypeDB GRPC Drivers
      • Python gRPC driver
      • Java gRPC driver
      • Rust gRPC driver
    • TypeDB HTTP API
    • TypeDB HTTP Drivers
      • Typescript HTTP Driver
    • TypeDB Cloud API
    • TypeDB 2.x vs TypeDB 3.x
      • TypeDB 2.x to TypeDB 3.x: what’s changed
      • TypeDB 2.x to TypeDB 3.x: migration process
  • TypeQL Reference

    • TypeQL language guide
      • Data and query model
      • Schema queries
        • Define
        • Undefine
        • Redefine
      • Data pipelines
        • Match
        • Fetch
        • Insert
        • Delete
        • Update
        • Put
        • Select
        • Require
        • Sort
        • Limit
        • Offset
        • Reduce
        • With
      • Functions
        • Writing functions
        • Streams
        • Scalars and tuples
      • Patterns
        • Conjunctions
        • Disjunctions
        • Negations
        • Optionals
      • Statements
        • entity
        • relation
        • attribute
        • sub
        • relates
        • plays
        • value
        • owns
        • alias
        • isa
        • links
        • has
        • is
        • let …​ =
        • let …​ in
        • label
        • iid
        • Comparisons
      • Annotations
        • @card
        • @cascade
        • @independent
        • @abstract
        • @key
        • @subkey
        • @unique
        • @values
        • @range
        • @regex
        • @distinct
      • Value types
        • Boolean
        • Integer
        • Double
        • Decimal
        • String
        • Date
        • Datetime
        • DatetimeTZ
        • Duration
      • Expressions
        • Literals
        • Operators
        • Function calls
        • Structs
        • Lists
      • Keyword glossary
      • Term index
  • TypeDB Academy

    • Course overview
    • 1. Introduction to TypeDB
    • 2. Environment setup
      • Sample deployment
    • 3. Reading data
      • Fetching simple data
      • Fetching polymorphic data
      • Using functions
      • Fetching schema types
      • Query validation
      • Summary
    • 4. Writing data
      • Inserting simple data
      • Inserting polymorphic data
      • Deleting data
      • Updating data
      • Data validation
      • Summary
    • 5. Defining schemas
      • Defining individual types
      • Defining type hierarchies
      • Defining constraints
      • Defining functions
      • Schema validation
      • Summary
    • 6. Building applications
      • Driver overview
      • Managing users and databases
      • Transactions
      • Executing queries
      • Processing results
      • Summary
    • 7. Understanding query patterns
      • Patterns as constraints
      • Relation patterns
      • Logical operators
      • Value comparisons
      • Value expressions
      • Solution set semantics
      • Summary
    • 8. Composing clauses
      • Chaining clauses
      • Aggregations
      • Sorting and pagination
      • Subqueries
      • Structured fetching
      • Summary
    • 9. Modeling schemas
      • The PERA model
      • Determining object types
      • Avoiding data redundancies
      • Using type hierarchies
      • Composition over inheritance
      • Using interface hierarchies
      • Avoiding interface redundancies
      • Interface contracts
      • Specialization
      • Summary
    • 10. Using inference
      • Functions as views
      • Function chaining
      • Summary
    • 11. Advanced modeling
      • Using dependent types
      • Using type-theoretic relations
      • Reifying interfaces
      • Summary

Use Cases

Explore real-world use cases for TypeDB.

Robotics

TypeDB in robotics applications.

IAM

Identity and Access Management (IAM) with TypeDB.

Cybersecurity

Cybersecurity solutions using TypeDB.

Social Network Application Robotics
Subscribe to Newsletter
undefinedDiscordYouTubeLinkedIn

Connect

  • Chat on Discord

  • Contact Us

  • Provide Feedback

Products

  • Database
  • Cloud
  • Studio
  • Community Edition
  • Enterprise
  • Pricing

Resources

  • What is TypeDB?
  • Why TypeDB?
  • Lectures
  • Papers
  • Blog
  • Startup Program

Developers

  • Documentation
  • Examples
  • Core Concepts
  • Tools
  • Maintenance
  • Reference

Company

  • LinkedIn
  • GitHub
  • Privacy Policy
  • Terms of Service
© 2025 TypeDB Ltd
TypeDB™ and TypeQL™ are trademarks of TypeDB Ltd