Forum Discussion

JV_Insights's avatar
JV_Insights
New Member
25 days ago

Multiple Semantic Models for one Ontology Layer

Hello everyone,

 

When generating an ontology layer, I see that you can generate one from a semantic model.

 

However, I see I can import multiple warehouses and lakehouses as part of an ontology layer if I wanted to start from scratch.

 

Let's say I have four semantic models that each represent an important busines process (finance, sales, inventory, production/procurement). Each semantic model follows a well-defined star schema, and are mature enough to even be considered data products. 

 

If I want to eventually create an agent where I access data from both sales and inventory semantic model, would the best practice be to import/use both semantic models in the ontology layer? Or should I create one ontology layer per semantic model, and have my agent consume the information by attaching both ontology layers to said agent? For this example, let's say I want an agent that can see sales history, customer purchasing behavior history from the sales model, and can see inventory of products being ordered fro the inventory model. 

 

Back to the original question, what's the best practice ultimately for an agent to consume information from multiple semantic models? 

7 Replies

  • Hey Asmita_27​ 

    Thank you for the response! 

    I did reason out eventually that this may be the best path forward. Not much documentation on this at the moment, so I really appreciate your insights.

    As you said it best, these are mature data products and having a separation for governance is a great point, so I'll stick to that methodology. 

    • Asmita_27's avatar
      Asmita_27
      Advocate IV

      Hi JV_Insights​ ,

      Happy to help! If my reply addressed your question, please mark it as the solution. This will make it easier for others facing a similar challenge to find the answer. Thanks!

      • JV_Insights's avatar
        JV_Insights
        New Member

        I will mark as solution, but I still want to have an open discussion with others to understand multiple perspectives!

        I am curious from a cost perspective, it's more expensive to have one agent consume multiple ontology layers, or is it better to have one agent per ontology? I know the business case is important, but stripping that away for a second and focusing on just technology - have you been able to monitor costs from a token/processing standpoint?

  • Hi JV_Insights ,

    In general, I'd keep a separate ontology per semantic model when each model is already a mature data product (Sales, Inventory, Finance, etc.). This promotes ownership, governance, and independent evolution.

    Then, for cross-domain scenarios, attach multiple ontologies to the same Data Agent. Only consider combining them into a single ontology if there are strong shared business concepts and frequent cross-domain queries that require a unified semantic layer.

    The key trade-off is maintaining clear domain boundaries versus simplifying cross-domain relationships.

    For most enterprise architectures, separate ontologies + one agent consuming multiple ontologies tends to be the more scalable approach.

  • Interesting discussion. I agree that keeping separate semantic models for mature business domains can make governance and ownership easier. This approach can also be useful for businesses managing operational data during an office relocation, where employee, asset, inventory, and facilities data may need to be analyzed separately while still supporting cross-domain decisions. For example, a relocation company such as WeMovers can benefit from organizing customer, vehicle, inventory, and scheduling data into clear business domains.

    • JV_Insights's avatar
      JV_Insights
      New Member

      Is it more expensive to have one agent consume multiple ontology layers, or is it better to have one agent per ontology? I know the business case is important, but stripping that away for a second and focusing on just technology - have you been able to monitor costs from a token/processing standpoint?