Skip to main content

Entity Relationships

The power of the Memory Platform lies in how entities are connected. These connections, known as Relationships or Edges, form the Knowledge Graph and allow the system to move from simple data storage to complex understanding.

Core Relationship Types

ABOUT

Connects a MemoryBlock to its primary Subject.

  • Direction: MemoryBlock → Subject
  • Meaning: "This memory is primarily about this entity."

PREFERS

Connects a User to a preference or tool.

  • Direction: User → Entity/Preference
  • Meaning: "The user has expressed a preference for this item."

DERIVED_FROM

Connects a MemoryBlock or Insight to its source document or conversation.

  • Direction: MemoryBlock → Document/Conversation
  • Meaning: "This knowledge was extracted from this specific source."

MENTIONS

Connects a MemoryBlock to an entity cited within its text.

  • Direction: MemoryBlock → Entity
  • Meaning: "The memory describes the subject but also references this other entity."

BELONGS_TO

Connects a child entity to its parent or container.

  • Direction: Project → Org, User → Org
  • Meaning: "This entity is part of or owned by the target entity."

SUPERSEDES

Connects a newer memory to an older one it replaces.

  • Direction: MemoryBlock (New) → MemoryBlock (Old)
  • Meaning: "This information is more current and should replace the target."

WORKS_ON

Connects a person to a project or initiative.

  • Direction: User → Project
  • Meaning: "The user is actively participating in this project."

Relationship Properties

Every relationship in the graph can store additional properties (metadata):

  • Weight (0.0 - 1.0): Strength of the relationship.
  • Timestamp: When the relationship was first discovered or last verified.
  • Evidence: A snippet of text or context that justifies the relationship.
  • Symmetry: Whether the relationship is one-way or mutual.

Using Relationships for Context

Relationships enable Context Expansion in retrieval: When you ask about "Project X", the system doesn't just find memories linked directly to it. It follows edges to find:

  • The Organization it belongs to.
  • The Users working on it.
  • The Documents it was derived from.

This connected data provides the AI with a much deeper "situational awareness" than standard vector search alone.