Table of Contents

Class SensitiveContentCategory

Namespace
MailFathom.Application.SensitiveContent
Assembly
MailFathom.Application.dll

One kind of sensitive material a scanner can look for, which is the unit an operator configures.

public sealed record SensitiveContentCategory : IEquatable<SensitiveContentCategory>
Inheritance
SensitiveContentCategory
Implements
Inherited Members

Remarks

A category rather than a rule is the unit of configuration because a rule corpus carries hundreds of entries, and an operator picking among them individually is maintaining a fork of that corpus. A single rule that misfires on one mailbox is suppressed by name inside a category that stays on.

The name is written into a placeholder that replaces detected text, and from there into chunks, embeddings, and whatever a reader is served, so the accepted grammar is narrow rather than merely careful: a name that could carry a bracket, a newline, or a quotation mark would let a rule corpus decide how the surrounding text parses.

Equality is ordinal, and a configured name is matched against a declared one case-insensitively where the two meet. The declared spelling is the one that survives that match, which is what keeps a placeholder identical however an operator capitalized the category in their own file.

Properties

Name

Gets the category's name, as the scanner that declares it spells it.

Methods

Create(string)

Creates a category from a declared or configured name.

HasName(string)

Reports whether a configured name is this category's, ignoring how it was capitalized.

ToString()

Returns a string that represents the current object.