Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hi Guys,
I see this "Changing a table or column name at the data source removes the table or column on the next schema refresh. You can use TMDL view to see the SourceLineageTag property and update it to the new name to avoid the semantic model removing it on schema refresh."
here:
learn.microsoft.com/en-us/fabric/fundamentals/direct-lake-power-bi-desktop
can anybody point me to the place where this tag is?
I have exact issue like in this sentence.
After changing columns in TE after refreshing DirectLake over OneLake semantic model in Fabric changes were saved. But when I opened power bi desktop, connected to directlake semantic model hit refresh, all changes were reverted.
I am lookin for possibilities why it happened.
Best,
Jacek
Solved! Go to Solution.
Hi @jaryszek,
You’re right that ChangedProperty = Name is used to track renamed objects so Power BI recognizes the column or table as the same entity after schema changes. When updating the expressionSource, there’s no need to add another ChangedProperty entry. The expression or query is managed by its own source or expression property in the TMDL file, so using ChangedProperty = Name for renamed elements is enough.
If you’re working with a Direct Lake or composite model, ensure the sourceLineageTag accurately references the updated table or field in your Lakehouse or Warehouse. This helps Power BI bind the renamed fields correctly and prevents them from being reset or dropped after a schema refresh. Only the Name property needs the change-tracking flag; other updates like expression changes are automatically managed during model sync.
Thank you.
Ok thanks,
I want to add few things:
1. Linear Tag for each table you can check under TMDL script, if this is pointing to old table schema it will not work, you need to have exact tag for specific schema and table you want to switch with: like Mart.FctTable2
2. You need to change also this kind of annotation:
from automatic generated string to just False.
3. You need to add ChangedProperty = Name within specific table and you can change EntityName and Schema:
Voila! you can refresh model.
My question to you @v-sgandrathi , if i want to change expressionSource this ChangedProperty = Name will be enough or i should use another property?
Best,
Jacek
Hi @jaryszek,
You’re right that ChangedProperty = Name is used to track renamed objects so Power BI recognizes the column or table as the same entity after schema changes. When updating the expressionSource, there’s no need to add another ChangedProperty entry. The expression or query is managed by its own source or expression property in the TMDL file, so using ChangedProperty = Name for renamed elements is enough.
If you’re working with a Direct Lake or composite model, ensure the sourceLineageTag accurately references the updated table or field in your Lakehouse or Warehouse. This helps Power BI bind the renamed fields correctly and prevents them from being reset or dropped after a schema refresh. Only the Name property needs the change-tracking flag; other updates like expression changes are automatically managed during model sync.
Thank you.
Hi @jaryszek,
This issue typically occurs when renamed columns lose their connection to the original data source, which is managed by the SourceLineageTag property in the model definition. You can locate this tag in your semantic model’s TMDL (Tabular Model Definition Language) view. In Power BI Desktop, open the TMDL view and expand the renamed table or column. You’ll find script lines like lineageTag: and sourceLineageTag:, with the latter linking the model column to the source field.
If your report is saved as a Power BI Project (.pbip), you can also open the file at YourProject.SemanticModel/definition/model.tmdl (or within the relevant table folder) and search for sourceLineageTag. Make sure this tag matches the renamed source column.
Updating the SourceLineageTag to reflect the new name allows Power BI to identify the object as the same source field during schema refresh, preventing it from being deleted or reset. This tag maintains the relationship between renamed fields in your model and the original source columns, ensuring your TE (Tabular Editor) changes remain after refreshing Direct Lake or reopening the model in Power BI Desktop.
Lineage tags for Power BI semantic models | Microsoft Learn
Use Tabular Model Definition Language (TMDL) view in Power BI Desktop - Power BI | Microsoft Learn
Power BI Desktop projects (PBIP) - Power BI | Microsoft Learn
Thank you.
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 4 | |
| 3 | |
| 2 | |
| 1 | |
| 1 |
| User | Count |
|---|---|
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 3 |