yuqi1129 opened a new issue, #14238:
URL: https://github.com/apache/gravitino/issues/14238

   ### Describe the feature
   
   Add a design doc for a business glossary in Gravitino. A glossary term has a 
name, definition, synonyms, owner, domains, documentation links, relations to 
other terms, and bindings to the assets and metrics that implement it.
   
   ### Motivation
   
   Gravitino can describe where data lives, and which business area it belongs 
to (Domain, #13864). It cannot describe what a business word such as "Active 
Customer" or "Churn" means. As a result:
   
   - Agents guess which table or metric a word refers to.
   - Teams define the same word differently, with no owner and no review.
   - Nothing links a definition to the data behind it.
   
   ### Describe the solution
   
   - **Organization**: there is no glossary container. Terms live under the 
metalake and are organized by Domain and by a broader/narrower hierarchy 
(multi-parent, cross-domain, acyclic), plus a symmetric related relation.
   - **Domain membership**: a term belongs to domains through an explicit 
relation, not through tags, because domain membership decides who can manage 
the term.
   - **Privileges**: `VIEW_DEFINITION`, `CREATE_DEFINITION` and 
`MANAGE_DEFINITIONS`, grantable on the metalake or a domain, with deny over 
allow and no self-approval.
   - **Lifecycle**: `DRAFT` → `APPROVED` → `DEPRECATED`, set through the API, 
with a readable history of versions. There is no approval workflow in OSS.
   - **Asset bindings**: explicit term → asset or metric bindings that never 
grant access to data.
   - **APIs**:
     - REST endpoints, Java/Python clients and CSV import/export;
     - a business-term resolve API (exact, case-insensitive match on names and 
synonyms);
     - read-only MCP tools for agents that return approved terms only.
   
   ### Additional context
   
   Related: Domain design #13866 / #13867.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to