Semantic Metadata
Introduction
Your PromptQL application is powered by an agentic semantic metadata layer. This approach centralizes all your data collections, operations, relationships, and permissions in one place. This makes it easy for you (and PromptQL) to organize, modify, secure, reason about, and grow the schema which represents your API.
Lifecycle
PromptQL uses this semantic metadata layer to define your API schema:
- Data connectors link to your data sources and introspect the source schema.
- The CLI then uses the introspection results to generate metadata objects.
- The metadata is then composed by the CLI into an immutable build, representing a snapshot in time, which is served by the distributed query engine to power PromptQL's interactions.
Metadata Objects
There are many types of metadata objects which define your API, but the most important ones which form the backbone of your application are:
- Models which read data
- Commands which modify data
- Relationships which connect data
- Permissions which protect data
We will cover each of these in more detail in the following sections.
Each of the metadata objects we'll examine in this section have a description
field. Some of the objects have
sub-objects which—in turn—can also have descriptions. If you have specific information which will aid PromptQL's
understanding of a table or a column, add the information to the object's metadata using the description
field.
If you have more general information that will affect the way in which your entire set of connected data is framed, check out how to use system instructions.