Help us improve
Share bugs, ideas, or general feedback.
From semantic-models
Audits and standardizes naming conventions in TMDL-based Power BI semantic models for tables, columns, measures, and display folders to ensure consistency and human-readability.
npx claudepluginhub data-goblin/power-bi-agentic-development --plugin semantic-modelsHow this skill is triggered — by the user, by Claude, or both
Slash command
/semantic-models:standardize-naming-conventionsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Interactive workflow for auditing and standardizing naming conventions in Power BI semantic models stored as TMDL files. Ensures tables, columns, measures, and display folders follow human-readable, consistent, business-aligned naming standards.
Reviews, audits, and validates Power BI semantic models for quality, performance, and best practices including bidirectional relationships, high-cardinality columns, data types, and memory usage.
Provides complete TMDL reference for Power BI semantic models: syntax, folder structure, object declarations, expressions, serialization, CI/CD, Git integration, and TMDL vs TMSL/BIM comparisons.
Share bugs, ideas, or general feedback.
Interactive workflow for auditing and standardizing naming conventions in Power BI semantic models stored as TMDL files. Ensures tables, columns, measures, and display folders follow human-readable, consistent, business-aligned naming standards.
Locate the TMDL files. Ask the user for the path to the .SemanticModel/definition/ directory if not obvious from context. Then scan the model structure:
# Count tables and get an overview
ls <path>/tables/*.tmdl
Read all table TMDL files to build a complete picture of current naming patterns. Focus on:
/// comments)CRITICAL: Do not rename anything without understanding the business terminology.
Use AskUserQuestion to gather context:
Adapt the naming rules to the user's business context. The rules in references/naming-rules.md are defaults -- override them when the user's organization has established conventions.
Before making changes, produce an audit report. Present a markdown table showing each proposed rename:
| Object Type | Current Name | Proposed Name | Issues Found |
|-------------|-------------|---------------|-------------|
| Table | FACT_Invoices | Invoices | Technical prefix |
| Measure | NetSls | Net Sales | CamelCase, abbreviation |
| Column | shp_dt | Ship Date | snake_case, abbreviation |
Group findings by issue type:
/// docstringsAsk the user to confirm or adjust the proposed renames before proceeding.
After user approval, edit the TMDL files. For each table file:
table declaration[Old Name] -> [New Name] patterns across ALL table files in the model'Table'[Old Column] -> 'Table'[New Column] across ALL table filesdisplayFolder: properties/// comments for measures and columns that lack themrelationships.tmdl for renamed tables/columnsCross-file reference updates are critical. When renaming a measure or column, search the entire definition/ directory for all references:
# Find all references to a renamed measure
rg "OldMeasureName" <path>/definition/tables/
rg "OldMeasureName" <path>/definition/relationships.tmdl
After applying changes, verify:
Run a final search to check for any missed references:
# Check for any remaining old names
rg -n "old_name_pattern" <path>/definition/
Consult references/naming-rules.md for the complete rule set including:
[Aggregation] [Base Name] [Period] ([Unit])Quick-reference checklist for the most common issues:
| Anti-Pattern | Rule | Example Fix |
|---|---|---|
snake_case | Use spaces | net_sales -> Net Sales |
CamelCase | Use spaces | NetSales -> Net Sales |
UPPER_CASE | Use spaces | TOTAL_COST -> Total Cost |
| Abbreviations | Spell out | Del. Mrgn -> Delivery Margin |
| Opaque acronyms | Spell out | TFS -> Total Freight Surcharge |
| Technical prefix | Remove | FACT_Orders -> Orders |
| Inconsistent periods | Standardize | LY/PY/Last Year -> 1YP |
| Inconsistent units | Standardize | pct/%/(%) -> (%) |
| Missing descriptions | Add | /// docstrings on all visible objects |
| Flat folders | Organize | Numbered hierarchy with subfolders |
WARNING: Renaming model objects breaks downstream report visuals that reference those fields. After renaming:
.pbir files or Power BI Service reports)visual.json files in PBIR formatAlways warn the user about this before applying renames. If downstream reports exist, consider:
references/naming-rules.md -- Complete naming convention rules with detection patterns, anti-pattern tables, and the measure name construction orderTo retrieve current semantic model and TMDL reference docs, use microsoft_docs_search + microsoft_docs_fetch (MCP) if available, otherwise mslearn search + mslearn fetch (CLI). Search based on the user's request and run multiple searches as needed to ensure sufficient context before proceeding.