Skip to content

Filters

A "filter" corresponds to a type of sensitive information. Philter has filters for sensitive information such as names, addresses, ages, and lots of others.

These are predefined filters that are ready to be used as well as custom filters that let you define your own Philter to identify sensitive information outside of what the predefined filters can identify. An example of a custom filter is a filter to identify your patient account numbers, where the structure of an account number is specific to your organization.

Each filter is capable of identifying and redacting a specific type of sensitive information. For example, there is a filter for phone numbers, a filter for US social security numbers, and a filter for person's names. You can enable any combination of these filters based on the types of sensitive information you need to redact.

This section of the documentation describes the filters available in Philter. The configuration options for each filter can vary due to the type of the sensitive information. For instance, only the zip code filter has a condition on the zip code's population.

A selection of filters and their configurations is called a policy. A policy describes how to de-identify a document.

Predefined Filters

Person's Names

Philter uses several methods to identify person's names.

Type Description
First Names Identifies common first names
Surnames Identifies common surnames
Person's Names (NER) Identifies full names using natural language processing analysis

Other Filters

Type Description
Ages Identifies ages such as 3.5 years old
Bank Routing Numbers Identifies bank routing numbers
Bitcoin Addresses Identifies Bitcoin addresses such as 127NVqnjf8gB9BFAW2dnQeM6wqmy1gbGtv
Canadian SINs Identifies Canadian Social Insurance Numbers that pass the Luhn check
Cities Identifies common cities
Counties Identifies common counties
Credit Card Numbers Identifies VISA, American Express, MasterCard, and Discover credit card numbers
Currency Identifies monetary amounts written with a currency symbol or code, such as $100.00 and 50 EUR
Dates Identifies dates in many formats such as May 22, 1999
Driver's License Numbers Identifies driver's license numbers for all 50 US states
EINs Identifies US Employer Identification Numbers in the form NN-NNNNNNN
Email Addresses Identifies email addresses
Hospitals Identifies common hospital names
ITINs Identifies US Individual Taxpayer Identification Numbers
IBAN Codes Identifies international bank account numbers
IP Addresses Identifies IPv4 and IPv6 addresses
MAC Addresses Identifies network MAC addresses
Passport Numbers Identifies US passport numbers
Phone Numbers Identifies phone numbers
Phone Number Extensions Identifies phone numbers
Sections Identifies sections in text denoted by
SSNs Identifies US Social Security Numbers; ITINs have their own filter
States Identifies US state names
State Abbreviations Identifies US state names by their abbreviations
Street Addresses Identifies the street line of US-style addresses and PO boxes
Tracking Numbers Identifies UPS, FedEx, and USPS tracking numbers
URLs Identifies URLs
VINs Identifies vehicle identification numbers
Zip Codes Identifies US zip codes

Custom Filter Types of Sensitive Information

In addition to the predefined types of sensitive information listed in the table above, you can also define your own types of sensitive information. Through custom identifiers and dictionaries, Philter can identify many other types of information that may be sensitive in your use-case. For example, if you have patient identifiers that follow a pattern of AA-00000 you can define a custom identifier for this sensitive information.

Philter can be configured to look identify sensitive information based on custom dictionaries. When a term in the dictionary is found in the text, Philter will treat the term as sensitive information and apply the given filter strategy.

Custom dictionaries support fuzziness to accommodate for misspellings. Set fuzzy to true on the dictionary; its sensitivity property controls the amount of allowed fuzziness.

Type Description
Custom Dictionaries Identifies sensitive information based on dictionary values.
Custom Identifiers Identifies custom alphanumeric identifiers that may be used for medical record numbers, patient identifiers, account number, or other specific identifier.