Property Exclusion System
The property exclusion system controls which frontmatter properties are copied when creating new nodes. This ensures new notes inherit relevant properties while filtering out file-specific or system properties.
How Exclusion Works
When you create a new node using quick creation commands, the system:
- Loads source file frontmatter
- Applies default exclusions (always filtered)
- Applies path-based exclusions (if path matches)
- Copies remaining properties to new node
- Adds relationship properties (Parent/Child/Related)
- Generates new Zettel ID (if configured)
Default Excluded Properties
Properties that are always excluded from copying, regardless of file location.
Default List
Default exclusions:
ParentChildRelated_ZettelID
Why these are excluded:
- Relationship properties: Would create incorrect links if copied
- Zettel ID: Each note needs a unique identifier
Customizing Defaults
To modify:
- Settings → Nexus Properties → Excluded properties
- Find "Default excluded properties"
- Add/remove properties (comma-separated)
- Click outside or press Enter to save
Example additions:
Parent, Child, Related, _ZettelID, date, created, modified, file-path
Result: None of these properties will be copied to new nodes anywhere in your vault.
Path-Based Exclusion Rules
Exclude additional properties for files in specific directories. These are added on top of the default exclusions.
How Path Matching Works
Rules use startsWith matching:
- File path must start with the rule's path
- Path is case-sensitive
- Trailing slashes don't matter
Example rule path: Projects/Work
Matches:
Projects/Work/Project A.md✅Projects/Work/Tasks/Task 1.md✅Projects/WorkRelated/Note.md❌ (doesn't match exactly)Other/Projects/Work/Note.md❌ (doesn't start with path)
Creating Path Rules
To create a rule:
- Settings → Nexus Properties → Excluded properties
- Scroll to "Path-based exclusion rules"
- Click "Add Rule"
- Enter Path: Directory path (e.g.,
Projects/Work) - Enter Excluded Properties: Comma-separated list (e.g.,
status, progress, deadline) - Click outside to save
Rule Components
Each path-based rule has:
Path (Required)
- Directory path to match
- Case-sensitive
- Uses startsWith matching
- Example:
Daily Notes/2024/
Excluded Properties (Required)
- Comma-separated property names
- Added to default exclusions
- Example:
date, weekday, journal-entry
Enabled (Toggle)
- Turn rule on/off
- Disabled rules are skipped
- Useful for temporary changes
Order (↑/↓ buttons)
- Rules evaluated top to bottom
- First matching rule is used
- Reorder with up/down buttons
Rule Evaluation
Order of Evaluation
When creating a new node:
- Load source frontmatter
- Check default exclusions (always applied)
- Find first matching path rule (top to bottom)
- Add path rule exclusions to default list
- Filter out all excluded properties
- Copy remaining properties
Multiple Rules
Only the first matching rule is used:
Example rules (top to bottom):
- Path:
Projects/Work→ Exclude:status, progress - Path:
Projects/→ Exclude:deadline, budget
File: Projects/Work/Task.md
Result: Excludes status, progress (rule 1 matches, rule 2 skipped)
File: Projects/Personal/Note.md
Result: Excludes deadline, budget (rule 1 doesn't match, rule 2 matches)
Place more specific paths above more general paths to ensure specific rules take precedence.
Example Configurations
Daily Notes
Scenario: Don't copy date-specific properties from daily notes
Rule:
- Path:
Daily Notes/ - Excluded:
date, weekday, journal-entry, mood, weather
Result: New notes from daily notes won't inherit date metadata
Project Files
Scenario: Don't copy project status when creating child tasks
Rule:
- Path:
Projects/ - Excluded:
status, progress, deadline, budget, phase
Result: Tasks inherit project metadata but not status/progress
Templates
Scenario: Don't copy template metadata to instances
Rule:
- Path:
Templates/ - Excluded:
template-version, template-author, template-date, is-template
Result: Notes created from templates don't inherit template metadata
Meeting Notes
Scenario: Don't copy meeting-specific properties
Rule:
- Path:
Meetings/ - Excluded:
meeting-date, attendees, agenda, minutes
Result: Action items inherit project metadata but not meeting details
Archive Folder
Scenario: Don't copy archived/completed status
Rule:
- Path:
Archive/ - Excluded:
archived-date, archived-by, original-path, archived
Result: Notes derived from archived notes don't inherit archive metadata
Managing Rules
Enabling/Disabling Rules
Toggle rules on/off without deleting:
- Find rule in settings
- Click checkbox on left
- Unchecked = disabled (rule skipped)
- Checked = enabled (rule evaluated)
Use cases:
- Temporarily test without a rule
- Switch between rule sets
- Debug exclusion issues
Reordering Rules
Change rule priority with ↑/↓ buttons:
Before (too general first):
Projects/→ Exclude statusProjects/Work/→ Exclude deadline
Problem: Rule 1 always matches for Work projects, rule 2 never runs
After (specific first):
Projects/Work/→ Exclude deadlineProjects/→ Exclude status
Solution: Work projects get deadline excluded, others get status excluded
Deleting Rules
Permanently remove a rule:
- Find rule in settings
- Click × button on right
- Rule is deleted immediately
Deletion is permanent. Consider disabling instead if you might need the rule later.
Combining Default + Path Rules
Additive Behavior
Path rules add to default exclusions, they don't replace them.
Example:
Default exclusions: Parent, Child, Related, _ZettelID
Path rule (Projects/): status, progress
Total exclusions for Projects files: Parent, Child, Related, _ZettelID, status, progress
Override Not Possible
You cannot include a property that's in default exclusions:
Default: Parent, Child, _ZettelID
Path rule: Parent, status (path rule adds status, Parent already excluded)
Result: Parent, Child, _ZettelID, status all excluded (cannot un-exclude Parent)
Path rules only add exclusions, they cannot remove defaults. If you need to include a default-excluded property, remove it from defaults.
Use Cases
Separating Concerns
Scenario: Projects have status, tasks should not inherit it
Solution:
- Create tasks from projects
- Exclude status in Projects/ path
- Tasks get project metadata minus status
Benefit: Tasks track their own status independently
Temporal Separation
Scenario: Daily notes have dates, derived notes should not
Solution:
- Create notes from daily notes
- Exclude date properties in Daily Notes/ path
- Derived notes are timeless
Benefit: Concepts extracted from daily notes aren't date-bound
Template Hygiene
Scenario: Templates have metadata, instances should not
Solution:
- Create instances from templates
- Exclude template-specific properties
- Instances only get content-relevant properties
Benefit: Clean instances without template cruft
Privacy Levels
Scenario: Private folders have sensitive metadata
Solution:
- Don't copy private metadata to shared notes
- Exclude sensitive properties in Private/ path
- New notes are shareable
Benefit: Prevent metadata leaks
Troubleshooting
Property Still Being Copied
Check default exclusions:
- Property might not be in default list
- Add it to defaults if should always exclude
Check path-based rules:
- Rule path might not match file path
- Check exact path spelling
- Verify rule is enabled
Check rule order:
- A more general rule might match first
- Reorder with ↑/↓ buttons
- Put specific rules above general ones
Check file location:
- File must be in path that matches rule
- Verify file path starts with rule path
Property Not Being Copied (Should Be)
Check default exclusions:
- Property might be in default list
- Remove from defaults if should copy
Check path-based rules:
- File might be in a path with exclusion rule
- Disable rule or move file
Check property exists:
- Verify property in source frontmatter
- Check spelling matches exactly
Rule Not Matching Files
Check path spelling:
- Paths are case-sensitive
Projects/≠projects/- Check for typos
Check path format:
- Use folder structure:
Folder/Subfolder - Not file paths:
Folder/Subfolder/file.md❌
Check startsWith behavior:
- File path must start with rule path
- Partial matches don't work
Multiple Rules Conflicting
Only first match is used:
- Rules evaluated top to bottom
- First matching rule wins
- Subsequent rules ignored
Solution:
- Reorder rules for correct priority
- More specific paths should be first
- Test with a few files
Best Practices
- Default exclusions for universal properties - Relationship properties, Zettel IDs
- Path rules for context-specific properties - Project status, meeting dates
- Specific paths above general -
Projects/Work/beforeProjects/ - Test with sample files before applying widely
- Document your exclusion strategy in a note for reference
- Review regularly - Remove unused rules, add new as needed
- Use enable/disable for temporary changes instead of deleting
Tips & Tricks
Exclude File Metadata
Properties added by Obsidian or other plugins:
file, path, created, modified, size, tags (if using frontmatter tags)
Add to defaults if you don't want these copied.
Exclude Private Properties
Properties starting with underscore or marked private:
_private, _internal, _system, _cache
Or use "Hide underscore properties" setting.
Exclude Derived Properties
Properties that should be recalculated per file:
word-count, last-edit, version, checksum
Project-Specific Properties
For project management workflows:
status, progress, deadline, assigned-to, priority, phase
Next Steps
- Learn about Node Creation to see exclusions in action
- Configure Default Exclusions
- Configure Path Rules
- Understand Property Inheritance