Understand the Model Object YAML file content

 

Within every Metadata Repository, there exists a designated folder for model objects, as outlined in the Understand the Project Metadata Repository content section.

This folder is structured to hold individual subfolders, each representing a Model Object Layer.

Within these Model Object Layer folders, you will find YAML files corresponding to each Model Object. Each file contains all the metadata for a Model Object.

Model object file details

After a model object has been created, the file should look like the following:

id: 0d669076-d240-4601-b2db-2b85f43b469c
name: Customer_Satellite
description: Generated Model Object from Customer
modelObjectTypeId: 3b97992a-73f0-451d-871f-e587ec71a216
terms:
    .....................................
  - id: 3b8286f7-0d15-4c0c-b5bf-c4826f2d36e9
    name: PersonID
    dataType:
      platformDataTypeId: 9d8d167b-ffbb-4498-8721-de74c859dad5
    isIdentity: false
    isBusinessKey: false
    isForeignKey: false
    isNullable: true
    hiddenInSource: false
    hiddenInTarget: false
- id: '20ae54cb-2c63-44ff-b377-7f8068e422b6'
    name: 'BG_LoadTimestamp'
    description: 'Default term with the load timestamp'
    dataType:
      platformDataTypeId: '88718695-75e5-413d-a8e9-fa27fe064353'
    defaultTermId: '3fdfd83b-00b6-47e7-b139-9b25993626ac'
    isIdentity: false
    isBusinessKey: false
    isForeignKey: false
    isNullable: false
    hiddenInSource: false
    hiddenInTarget: true
isDefaultTerm: true
    .....................................
  - id: 0da3c987-2016-4a93-8234-d0637da8a5aa
    name: FK_HUB_Stage_Sales.Customer_AccountNumber
    isForeignKey: true
    dataType:
      platformDataTypeId: 9245c3e9-05f8-4e48-962c-e1b3c49bc239
      length: 10
    isIdentity: false
    isBusinessKey: false
    isForeignKey: true
    isNullable: true
    hiddenInSource: true
    hiddenInTarget: false
    isBusinessKeyForeignKey: true
    .....................................
dataflows:
  - id: 84264777-8c4a-4ca9-bfc6-f3ee933c2508
    name: Dataflow1
    dataflowSets:
      - id: 66d42c43-1f81-42c0-bcc0-0e1d54ba83b9
        name: Set1
        termMappings:
          .....................................
          - termId: 579bea2f-ded9-49a4-9d8e-74ad2970d52d
            expression: >-
              0c89df67-7964-47bf-a783-22755a9dd3e1.7a691f80-c302-4e02-8749-7b4ad11f8bf5
          - termId: 7e04553e-d3f3-4deb-9bfb-a0ff80dc1853
            expression: >-
              0c89df67-7964-47bf-a783-22755a9dd3e1.4bb1e56b-4b7e-4145-85a8-ff4839750592
          .....................................
        dataflowModelObjects:
          - id: 0c89df67-7964-47bf-a783-22755a9dd3e1
            sourceModelObjectId: a81972ef-4412-4de1-9731-9d30f2d2f333
            alias: Stage_Sales.Customer
relationships:
  - id: 95ac1fe8-ba17-41e1-95e3-9ade90dfe310
    referencedModelObjectId: c2963eb6-43d6-405c-ac32-0efe881572e9
    role: HUB_Stage_Sales.Customer
   missingBusinessKeyBehavior: none
    relationshipTerms:
      - termId: 0da3c987-2016-4a93-8234-d0637da8a5aa
        referenceTermId: 6be426a0-2c79-4a30-a735-abfcb15900d9
propertyValues:
  - propertyId: 713ec758-07f0-4d05-8b91-5d3427261f76
    value: Partition
  - propertyId: a57fa4ce-3f1f-4542-85e0-27c0c5dc9b3f
    value: PersonID
tags:
  - $view#id#fa8aa022-70bc-410d-a141-25f6505c9f38

The different nodes contain:

role
 Node name  Node description  Node value example
id Model Object's internal id (GUID format) 0d669076-d240-4601-b2db-2b85f43b469c
name Model Object's name SAT_Stage_Sales.Customer
description Model Object's description Generated Model Object from Stage_Sales.Customer
modelObjectTypeId Model Object Layer's id (GUID format) 3b97992a-73f0-451d-871f-e587ec71a216
terms List of Model Object's terms -
terms > id Term's internal ID (GUID format) 3b8286f7-0d15-4c0c-b5bf-c4826f2d36e9
terms > name Term's name PersonID
terms > dataType > platformDataTypeId Datatype's internal ID (GUID format) 9d8d167b-ffbb-4498-8721-de74c859dad5
terms > dataType > length Datatype's length (if relevant) 20
terms > defaultTermId Default term's internal ID (if relevant)
3fdfd83b-00b6-47e7-b139-9b25993626ac
terms > isIdentity True if the Term is defined as an identity false
terms > isBusinessKey True if the Term is defined as a Business Key false
terms > isForeignKey True if the Term is defined as a Foreign Key false
terms > isNullable True if the Term is nullable true
terms > hiddenInSource True if the Term is defined as hidden in the source false
terms > hiddenInTarget True if the Term is defined as hidden in the target false
terms > isDefaultTerm True if the Term is a default term true
terms > isBusinessKeyForeignKey True if the term comes from a Relationship true
terms > 
isIdentityForeignKey
True if the term comes from a Relationship and is set as an identity term true
dataflows List of Model Object's terms -
dataflows > id Dataflow's id (GUID format) 84264777-8c4a-4ca9-bfc6-f3ee933c2508
dataflows > name Dataflow's name Dataflow1
dataflows > dataflowSets List of Dataflow Sets in the Dataflow -
dataflows > dataflowSets > id Dataflow Set's ID (GUID format) 66d42c43-1f81-42c0-bcc0-0e1d54ba83b9
dataflows > dataflowSets > name Dataflow Set's name  Set1
dataflows > dataflowSets > termMappings List of Term mappings in the Dataflow Set -
dataflows > dataflowSets > termMappings > termId Term concerned by the mapping (GUID of the Term) 579bea2f-ded9-49a4-9d8e-74ad2970d52d
dataflows > dataflowSets > termMappings > expression Expression of the mapping (the GUID of source and target terms are used) >-
0c89df67-7964-47bf-a783-22755a9dd3e1.7a691f80-c302-4e02-8749-7b4ad11f8bf5
dataflows > dataflowSets > dataflowModelObjects List of Model Objects used in the DataFlow -
dataflows > dataflowSets > dataflowModelObjects > id Dataflow Model Object's ID (GUID format) 0c89df67-7964-47bf-a783-22755a9dd3e1
dataflows > dataflowSets > dataflowModelObjects > sourceModelObjectId Dataflow Model Object Source id (GUID format) a81972ef-4412-4de1-9731-9d30f2d2f333
dataflows > dataflowSets > dataflowModelObjects > alias Dataflow Model Object's alias Stage_Sales.Customer
relationships List of Relationships -
relationships > id Relationship ID (GUID format) 95ac1fe8-ba17-41e1-95e3-9ade90dfe310
relationships > referencedModelObjectId Relationship's source Model Object c2963eb6-43d6-405c-ac32-0efe881572e9
relationships > role Relationship's role name HUB_Stage_Sales.Customer
relationships > missingBusinessKeyBehavior Defines the behavior in case of missing BK none
relationships > relationshipTerms List of Terms involved in the relationship -
relationships > relationshipTerms > termId Target term in the relation 0da3c987-2016-4a93-8234-d0637da8a5aa
relationships > relationshipTerms > referenceTermId Source Term in the relation 6be426a0-2c79-4a30-a735-abfcb15900d9
propertyValues List of Model Object's Property values -
propertyValues > propertyId Property's id (GUID format) 713ec758-07f0-4d05-8b91-5d3427261f76
propertyValues > value Property's value Partition