Table of Contents

Built-in BPA Rules

Overview

Tabular Editor 3 Enterprise Edition includes 27 built-in best practice rules. These rules cover common issues in semantic model development and are updated automatically with each release.

Unlike custom rules stored in JSON files, built-in rules:

  • Are integrated directly into the application
  • Update automatically with new releases
  • Link to knowledge base documentation
  • Are read-only to ensure consistency across teams
  • Work immediately without configuration

Key Features

Rule Categories

The 27 built-in rules cover four areas:

  • Error Prevention: Invalid characters, missing expressions, data type mismatches
  • Performance: Relationships, partitions, aggregations
  • Formatting: Format strings, visibility, naming conventions
  • Maintenance: Descriptions, calculation groups, unused objects

Global and Per-Rule Control

Screenshot showing BPA preferences with global enable/disable toggle and per-rule checkboxes You can enable or disable built-in rules globally or individually. Settings persist across sessions and work independently from your custom rules.

To manage built-in rules:

  1. Go to Tools > Preferences > Best Practice Analyzer
  2. Find the Built-in Rules section
  3. Toggle Enable Built-in Rules to turn the entire collection on or off
  4. Use the BPA Manager to enable or disable individual rules

First-Run Notification

Screenshot of first-run notification dialog introducing built-in BPA rules

The first time you open a model after upgrading to a version with built-in rules, you'll see a notification explaining the feature with a link to preferences. This notification only appears once.

Knowledge Base Integration

Screenshot showing BPA window with rule selected and "View Documentation" button highlighted

Every built-in rule links to a knowledge base article through the KnowledgeBaseArticle property. Each article explains what the rule checks, why it matters, and how to fix violations.

To view documentation, select a rule in the Best Practice Analyzer window.

Read-Only Protection

Built-in rules can't be edited, cloned, or deleted. This ensures all users have the same rule definitions. You can disable individual rules, but the rule definitions themselves remain unchanged.

Screenshot showing built-in rule with read-only badge/icon in BPA window

ID Collision Prevention

Built-in rules use reserved ID prefixes. When you create a custom rule, Tabular Editor validates that your ID doesn't conflict with built-in rules and shows an error if it does.

Built-in Rules Catalog

The initial release includes the following rules:

Error Prevention Rules

Performance Rules

Formatting Rules

Maintenance Rules

Working with Built-in and Custom Rules

Built-in and custom rules work side by side:

Feature Built-in Rules Custom Rules
Storage Hardcoded in application JSON files or model annotations
Updates Automatic with releases Manual editing required
Modification Read-only Fully editable
Documentation Integrated KB articles User-provided descriptions
Availability Enterprise Edition only All editions
Sharing Consistent across teams Requires manual distribution
  1. Enable built-in rules for immediate coverage
  2. Review violations and apply fixes
  3. Disable rules that don't apply to your conventions
  4. Add custom rules for organization-specific requirements
  5. Use the "Ignore" feature for intentional violations

Best Practices

Onboarding Teams

When rolling out built-in rules to your team:

  • Start with all rules enabled to establish a baseline
  • Review violations together and agree on which rules apply
  • Document why specific rules are disabled
  • Add custom rules for organization-specific requirements

Model Maintenance

  • Run BPA before committing changes to version control
  • Fix high-severity violations immediately
  • Review medium and low-severity issues regularly
  • Use automatic fixes where available

Custom Rules

  • Don't duplicate built-in rule functionality
  • Use different ID prefixes to avoid conflicts
  • Document your custom rules
  • Share rule collections within your team

Troubleshooting

Built-in Rules Not Appearing

If built-in rules don't show in the BPA window:

  1. Check that you're using Tabular Editor 3 Enterprise Edition
  2. Verify that built-in rules are enabled in Tools > Preferences > Best Practice Analyzer
  3. Restart Tabular Editor if you just changed preferences
  4. Confirm your license is active

Cannot Modify Built-in Rule

This is expected. Built-in rules are read-only. If you need different logic, create a custom rule with your expression and disable the corresponding built-in rule.

ID Collision Error

Built-in rules reserve certain ID prefixes. Choose a different ID that doesn't start with TE3_BUILT_IN.

Compatibility

  • Requires Tabular Editor 3.24.0 or later
  • Enterprise Edition only
  • Works with all compatibility levels (1200+)

Next Steps