Use when the user asks to "write a DAX measure", "create DAX calculations", "add time intelligence", "calculate YTD", "year over year", "running total", "semi-additive measure", "parent-child hierarchy", "ABC classification", "new and returning customers", "dynamic segmentation", "currency conversion", "ranking", "cumulative total", "budget allocation", or any DAX formula authoring for a Microsoft Fabric or Power BI semantic model. This skill provides DAX patterns specifically formatted as TMDL for Fabric semantic models.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fabric-semantic-model:authoring-dax-measuresThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Comprehensive DAX pattern library for Microsoft Fabric semantic model measures. All patterns use TMDL syntax and follow Fabric best practices.
Comprehensive DAX pattern library for Microsoft Fabric semantic model measures. All patterns use TMDL syntax and follow Fabric best practices.
'Table'[Column] for column references.[Measure Name] for measure references (no table prefix)./: Use DIVIDE(numerator, denominator) to handle division by zero gracefully.CALCULATE('Table'[Column] = value) instead of CALCULATE(FILTER('Table', ...)) when possible.formatString on every measure./// descriptions to every measure.Requires a proper date table with an isKey date column and continuous date range with no gaps.
Core time intelligence measures:
See references/time-intelligence.md for complete patterns.
For measures that should not be summed across time (e.g., account balances, inventory levels, headcount).
See references/semi-additive.md for patterns.
For ragged/unbalanced hierarchies like chart of accounts or organizational structures.
See references/parent-child.md for patterns.
Standard business calculations: ratios, rankings, segmentation, cumulative totals, new/returning customer tracking, budget allocation.
See references/common-kpis.md for patterns.
| Type | Format String | Example Output |
|---|---|---|
| Currency (USD) | $ #,##0.00 | $ 1,234.56 |
| Currency (no decimals) | $ #,##0 | $ 1,235 |
| Percentage | 0.00% | 12.34% |
| Percentage (no decimals) | 0% | 12% |
| Integer | #,##0 | 1,235 |
| Decimal | #,##0.00 | 1,234.56 |
| Large numbers | #,##0,,M | 1M |
When the user wants to add DAX measures to a TMDL semantic model, follow this workflow:
dbt_project.yml). If found, read the schema YAML files under models/marts/ to understand available tables, columns, data types, and descriptions. This context helps generate accurate column references and appropriate measure logic.model.tmdl or database.tmdl. Read all table files from tables/ and relationships.tmdl.The user may provide a natural language description ("year over year sales growth"), a pattern name ("time intelligence", "semi-additive"), or a specific measure definition. Match it to the appropriate pattern from the reference files.
Measures on facts go in the fact table file. If a dedicated measures table exists, use that. Use dbt model names (with fct_/dim_ prefix stripped) to identify the correct TMDL table.
/// {Description of what this measure calculates}
measure '{Measure Name}' =
{DAX expression using VAR/RETURN for complex logic}
formatString: {appropriate format}
displayFolder: {logical folder grouping}
If the measure involves time: verify a date table exists with isKey on the date column, use CALCULATE + time intelligence functions, and generate the full family of related measures (base, YTD, PY, YoY, YoY %).
Read the target table's .tmdl file, append the new measure(s) after existing measures, maintain proper TMDL indentation (single tab).
references/time-intelligence.md — Complete time intelligence pattern libraryreferences/semi-additive.md — Balance sheet, inventory, and snapshot patternsreferences/parent-child.md — Chart of accounts, org hierarchy patternsreferences/common-kpis.md — Rankings, segmentation, cumulative, new/returning, budget, currencyProvides CDSS development patterns for drug interaction checking, dose validation, clinical scoring (NEWS2, qSOFA), and alert classification integrated into EMR workflows.
npx claudepluginhub accelerate-data/vibedata-official --plugin fabric-semantic-model