solidprivacy commited on
Commit
866ed6f
·
verified ·
1 Parent(s): 13b6d32

Add Dutch legal audit candidate review layer

Browse files
Files changed (1) hide show
  1. dutch_recognizers.py +18 -0
dutch_recognizers.py CHANGED
@@ -1,5 +1,11 @@
1
  """Dutch / European + Dutch legal recognizers for SolidPrivacy Scrub.
2
 
 
 
 
 
 
 
3
  Phase 1-3 v7 update:
4
  - adds a central Dutch legal reference taxonomy and contextual reference
5
  recognizer for client references, school references, invoice numbers,
@@ -127,6 +133,12 @@ LEGAL_IDENTIFIER_CONTEXT = [
127
  "zaakreferentie",
128
  "factuurnummer",
129
  "interne klantreferentie",
 
 
 
 
 
 
130
  ]
131
 
132
  # Presidio PatternRecognizer uses case-insensitive matching. For names and Dutch
@@ -298,6 +310,12 @@ REFERENCE_VALUE_REGEX = re.compile(
298
  r"(?=[A-Z0-9][A-Z0-9./_-]{4,49}\b)(?=[A-Z0-9./_-]*[A-Z])(?=[A-Z0-9./_-]*\d)"
299
  r"[A-Z0-9]+(?:[./_-][A-Z0-9]+){1,8}"
300
  r"|"
 
 
 
 
 
 
301
  # Dutch appellate / court formats like 200.345.678/01 OK.
302
  r"\d{3}\.\d{3}\.\d{3}/\d{2}\s+[A-Z]{1,5}"
303
  r"|"
 
1
  """Dutch / European + Dutch legal recognizers for SolidPrivacy Scrub.
2
 
3
+ Phase 1-3 v8 update:
4
+ - extends the taxonomy strategy with vehicle/object reference categories;
5
+ - broadens context-bound reference values to include compact values such as
6
+ "XX123X" after a strong context word like "kenteken";
7
+ - prepares the recognizer layer for a separate audit/candidate review layer.
8
+
9
  Phase 1-3 v7 update:
10
  - adds a central Dutch legal reference taxonomy and contextual reference
11
  recognizer for client references, school references, invoice numbers,
 
133
  "zaakreferentie",
134
  "factuurnummer",
135
  "interne klantreferentie",
136
+ "kenteken",
137
+ "kentekennummer",
138
+ "voertuigreferentie",
139
+ "chassisnummer",
140
+ "objectnummer",
141
+ "assetnummer",
142
  ]
143
 
144
  # Presidio PatternRecognizer uses case-insensitive matching. For names and Dutch
 
310
  r"(?=[A-Z0-9][A-Z0-9./_-]{4,49}\b)(?=[A-Z0-9./_-]*[A-Z])(?=[A-Z0-9./_-]*\d)"
311
  r"[A-Z0-9]+(?:[./_-][A-Z0-9]+){1,8}"
312
  r"|"
313
+ # Compact context-bound reference values such as XX123X after "kenteken"
314
+ # or HR2026A after an explicit reference label. These are not used blindly;
315
+ # DutchContextualReferenceRecognizer only applies them when a taxonomy
316
+ # keyword is nearby.
317
+ r"(?=[A-Z0-9]{5,12}\b)(?=[A-Z0-9]*[A-Z])(?=[A-Z0-9]*\d)[A-Z0-9]{5,12}"
318
+ r"|"
319
  # Dutch appellate / court formats like 200.345.678/01 OK.
320
  r"\d{3}\.\d{3}\.\d{3}/\d{2}\s+[A-Z]{1,5}"
321
  r"|"