![]() |
VOOZH | about |
dotnet add package IsIdentifiable --version 0.5.0
NuGet\Install-Package IsIdentifiable -Version 0.5.0
<PackageReference Include="IsIdentifiable" Version="0.5.0" />
<PackageVersion Include="IsIdentifiable" Version="0.5.0" />Directory.Packages.props
<PackageReference Include="IsIdentifiable" />Project file
paket add IsIdentifiable --version 0.5.0
#r "nuget: IsIdentifiable, 0.5.0"
#:package IsIdentifiable@0.5.0
#addin nuget:?package=IsIdentifiable&version=0.5.0Install as a Cake Addin
#tool nuget:?package=IsIdentifiable&version=0.5.0Install as a Cake Tool
👁 .NET Core
👁 Total alerts
👁 NuGet Badge
👁 codecov
A tool for detecting identifiable information in data sources. Out of the box supports:
Rules base is driven by regular expressions and plugin services (e.g. Natural Language Processing). Also includes a reviewer/redactor tool for processing false positives and updating the rules base.
There is a for running directly or you can use the nuget package in your own code to evaluate data.
To use the nuget package create a new project and add a reference to the package:
dotnet new console -n MyExample
cd MyExample
dotnet add package IsIdentifiable
Open Program.cs and enter the following:
using IsIdentifiable.Options;
using IsIdentifiable.Reporting;
using IsIdentifiable.Reporting.Reports;
using IsIdentifiable.Runners;
using System;
// Where to put the output, in this case just to memory
var dest = new ToMemoryFailureReport();
// Your runner that fetches and validates data
var runner = new CustomRunner(dest);
// fetch and analyise data
runner.Run();
Console.WriteLine("Failures:" + dest.Failures.Count);
Console.WriteLine("Bad Parts:" + dest.Failures[0].Parts.Count);
Console.WriteLine("Bad Part 0:" + dest.Failures[0].Parts[0].Word);
Console.WriteLine("Bad Part 1:" + dest.Failures[0].Parts[1].Word);
class CustomRunner : IsIdentifiableAbstractRunner
{
public CustomRunner(IFailureReport report) :base(new IsIdentifiableBaseOptions(),report)
{
}
public override int Run()
{
var field = "SomeText";
var content = "Patient DoB is 2Mar he is my best buddy. CHI number is 0101010101";
// validate some example data we might have fetched
var badParts = Validate(field,content);
// You can ignore or adjust these badParts if you want before passing to destination reports
if(badParts.Any())
{
var f = new Failure(badParts)
{
ProblemField = field,
ProblemValue = content,
};
// Pass all parts as a Failure to the destination reports
AddToReports(f);
}
// Record progress
DoneRows(1);
// Once all data is finished being fetched, close the destination reports
CloseReports();
return 0;
}
}
Run your csproj with dotnet run and you should see the following
$> dotnet run
Failures:1
Bad Parts:2
Bad Part 0:2Mar
Bad Part 1:0101010101
To build and run tests you must first download the NLP english data file for Tesseract to the data\tessdata\ directory. Or use the following script:
cd .\data\tessdata\
# Windows
./download.ps1
# Linux
. ./download.sh
Then build and run (from the root of the repository)
dotnet build
dotnet test
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.5.0 | 2,398 | 4/21/2025 |
| 0.4.0 | 5,503 | 7/17/2024 |
| 0.3.0 | 2,909 | 1/19/2024 |
| 0.2.1 | 616 | 1/8/2024 |
| 0.2.0 | 389 | 1/7/2024 |
| 0.1.0 | 4,375 | 4/13/2023 |
| 0.0.9 | 2,582 | 11/21/2022 |
| 0.0.8 | 957 | 11/5/2022 |
| 0.0.7 | 1,464 | 8/24/2022 |
| 0.0.6 | 705 | 8/17/2022 |
| 0.0.5 | 1,236 | 7/20/2022 |
| 0.0.4 | 2,898 | 3/3/2022 |
| 0.0.3 | 931 | 3/1/2022 |
| 0.0.2 | 884 | 2/10/2022 |
| 0.0.1 | 897 | 2/7/2022 |