# Semantic Business Objects (Ontology)

### What is a Semantic Object?

A Semantic Object (also referred to as a Semantic Business Object or Ontology Node) is a curated, business-domain-facing view of one or more underlying database tables. Four pillars define it:

<table data-header-hidden><thead><tr><th width="166.5999755859375"></th><th width="298"></th><th></th></tr></thead><tbody><tr><td><strong>Pillar</strong></td><td><strong>What it provides</strong></td><td><strong>Example (BFSI)</strong></td></tr><tr><td><strong>Attributes</strong></td><td>A curated set of columns from one or more tables, with business names and data types</td><td>account_id, legal_name, outstanding_principal, risk_category</td></tr><tr><td><strong>Derived Measures</strong></td><td>Computed aggregations and calculated KPIs derived from attributes</td><td>Total At-Risk Principal = SUM(principal) WHERE probability > 0.7</td></tr><tr><td><strong>Actions</strong></td><td>Write-back database operations an authorised user can perform on the object</td><td>Apply Debit Freeze (UPDATE party_compliance_status)</td></tr><tr><td><strong>Services</strong></td><td>Parameterised query functions that return contextual sub-data related to the object</td><td>get_transaction_history(@account_id) returns last 25 transactions</td></tr></tbody></table>

### Why Semantic Objects?

The primary motivation is the translation problem between database schemas and business intent. A relational schema optimised for write performance or normalisation is typically not optimised for reading business insight. Semantic objects solve this by:

* Pre-joining complex table chains into a single, readable view
* Naming columns in business language rather than technical snake\_case
* Encoding business rules (e.g., "only show active accounts") into the base query rather than pushing this burden to every consumer
* Making write operations safe and auditable by encoding validation logic into action definitions
* Enabling AI agents and natural language query tools to understand data through definitions and descriptions rather than raw column names&#x20;

{% hint style="info" %}

#### BFSI Example

Rather than asking an analyst to write a 7-table join to see a customer's risk score alongside their compliance status and lien totals, the RiskWatchlist semantic object pre-computes this view. The analyst queries one object; the platform executes the governed SQL.
{% endhint %}

A **Semantic Object** (also called a Business Object) is a governed, business-friendly view of your data. It wraps one or more database tables in a curated layer that gives columns meaningful names, pre-joins related tables, and exposes only the data that a given business domain needs to see and act on.The **Business Object** editor provides a structured, form-based interface for building these objects without writing JSON by hand. It is organised into six sections, each accessible from the left-hand navigation panel inside the editor:

<table data-header-hidden><thead><tr><th width="152.20001220703125"></th><th width="153.79998779296875"></th><th></th></tr></thead><tbody><tr><td><strong>Section</strong></td><td><strong>Icon</strong></td><td><strong>What you configure here</strong></td></tr><tr><td>General</td><td><em>(selected tab)</em></td><td>Object name, description, base SQL query (the definitionQuery), inherent type, and row-level security filter.</td></tr><tr><td>Attributes</td><td></td><td>The columns your object exposes: which is the primary key, which is the display title, data types, filter settings, and derived measures and dimensions.</td></tr><tr><td>Relationships</td><td></td><td>Links to other Business Objects — how this object connects to the wider ontology by shared key attributes.</td></tr><tr><td>Services</td><td></td><td>Parameterised SQL query functions that return related child data, history, or detail records on demand.</td></tr><tr><td>Actions</td><td><em>(orange lightning)</em></td><td>Write-back operations (INSERT, UPDATE) that users can perform on individual records — governed mutations to the underlying database.</td></tr><tr><td>Permissions</td><td></td><td>Access control settings defining which roles or users can view, edit, or execute this object and its actions.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.bdb.ai/bdb-user-documentation/platform-modules/11.0/data-center/data-catalog/semantic-business-objects-ontology.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
