Inferensys

Prompt

Data Breach Notification Event Log Prompt

A practical prompt playbook for using Data Breach Notification Event Log Prompt in production AI workflows.
Data scientist building training data pipeline on laptop, data preprocessing visible, technical workspace.
PROMPT PLAYBOOK

When to Use This Prompt

A practical guide for privacy engineers and legal operations teams converting unstructured breach reports into machine-readable notification event logs.

This prompt is designed for privacy engineers and legal operations teams who need to convert unstructured breach reports into structured, machine-readable notification event logs. The primary job-to-be-done is transforming a factual breach summary—typically a narrative document or email—into a record that can be ingested directly by an incident management system, a regulatory filing pipeline, or a compliance audit trail. The ideal user has a breach report in hand and needs to extract, normalize, and structure key data points such as data categories, affected subjects, discovery timestamps, and applicable regulatory triggers without manually re-keying information into a ticketing system.

Use this prompt when you have a confirmed or suspected breach summary and need a consistent, auditable output. The prompt assumes the input contains factual information; it does not make legal determinations about whether a breach is notifiable, nor does it replace human judgment about notification obligations. It is appropriate for operationalizing the recording of a breach event, not for making the legal decision to notify. Do not use this prompt as a substitute for legal advice, to generate a notification letter to affected parties, or to interpret vague or contradictory source material where a human investigator has not yet established the facts. The output is a structured log entry, not a final regulatory filing.

Before using this prompt, ensure you have a complete, reviewed breach summary. The prompt's value is in its strict schema enforcement, which maps extracted fields to a controlled taxonomy for data categories and regulatory triggers. If your input is a raw, unconfirmed alert from a detection system, route it through an investigation and confirmation workflow first. The next step after generating this log is to feed the structured output into your incident management system and, where required by your organization's policy, queue it for human review before any regulatory submission.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Data Breach Notification Event Log Prompt works, where it fails, and the operational preconditions required before integrating it into a privacy engineering pipeline.

01

Good Fit: Regulatory Trigger Mapping

Use when: You need to map a confirmed data exposure to specific regulatory notification triggers (GDPR, CCPA, HIPAA) based on data categories and affected subjects. Guardrail: Always require a human privacy analyst to confirm the regulatory mapping before the record is committed to the notification system of record.

02

Bad Fit: Breach Legal Determination

Avoid when: The prompt is used to make a final legal determination about whether a breach is notifiable. The model cannot interpret jurisdictional nuance or legal precedent. Guardrail: The prompt output must be treated as a structured draft for legal review, not a substitute for qualified legal advice or final regulatory filing.

03

Required Inputs: Data Category Taxonomy

Risk: Without a predefined data category taxonomy, the model invents categories that don't match your data inventory or regulatory definitions. Guardrail: Provide a controlled vocabulary for data categories (e.g., PII, PHI, PCI, credentials) as part of the prompt context and validate output categories against that list.

04

Operational Risk: Timestamp Drift

What to watch: The model may generate a discovery timestamp that does not match the actual incident timeline, creating compliance risk if the record is ingested without verification. Guardrail: Inject the authoritative discovery timestamp from your incident management system as a required input field and prevent the model from modifying it.

05

Operational Risk: Affected Subject Count Mismatch

What to watch: The model may hallucinate or miscount the number of affected data subjects, which directly impacts regulatory thresholds and notification obligations. Guardrail: Provide the affected subject count as a pre-computed input from your data inventory tooling and validate the output record against that source of truth.

06

Bad Fit: Real-Time Breach Detection

Avoid when: You expect the prompt to detect a breach from raw logs or network events. This prompt structures a known incident, it does not perform anomaly detection. Guardrail: Use a dedicated security detection pipeline upstream. This prompt should only receive confirmed incident context from your SIEM or incident response platform.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A production-ready prompt for generating structured data breach notification event logs with regulatory trigger mapping and data category taxonomy enforcement.

This prompt template is designed for privacy engineers and security operations teams who need to generate structured, machine-parseable data breach notification event logs. It enforces a strict JSON schema, maps affected data categories to a controlled taxonomy, and identifies applicable regulatory triggers (GDPR, CCPA, HIPAA, etc.) based on the data types and affected subjects. The output is intended to feed directly into incident management systems, regulatory filing workflows, and audit trails. Do not use this prompt for generating the actual notification text to data subjects or for providing legal advice on notification obligations; it produces a structured event record, not a legal document.

text
You are a privacy incident logging assistant. Your task is to generate a structured data breach notification event log entry from the provided incident details. You must strictly adhere to the output schema, use only the allowed data category taxonomy, and map the incident facts to the correct regulatory triggers.

## INPUT
[INCIDENT_DESCRIPTION]

## CONSTRAINTS
- Output ONLY a valid JSON object conforming to the provided schema. No markdown fences, no surrounding text.
- All timestamps MUST be in ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).
- The `data_categories` array MUST only contain values from the approved taxonomy listed below.
- The `regulatory_triggers` array MUST only contain values from the approved regulation list.
- If a field's value is unknown or not applicable, use `null` for nullable fields or an empty array `[]` for array fields as specified in the schema. Do not omit required fields.
- The `severity` field must be one of: `critical`, `high`, `medium`, `low`, `info`.
- The `discovery_method` must be one of: `automated_alert`, `manual_review`, `external_report`, `internal_audit`, `third_party_notification`, `unknown`.

## APPROVED DATA CATEGORY TAXONOMY
- `pii` (Personally Identifiable Information)
- `phi` (Protected Health Information)
- `financial` (Financial Account or Payment Data)
- `credentials` (Passwords, Keys, Tokens)
- `biometric` (Biometric Data)
- `communications` (Private Communications Content)
- `geolocation` (Precise Geolocation Data)
- `behavioral` (Behavioral or Profiling Data)
- `corporate_confidential` (Trade Secrets, Internal Strategy)
- `legal_privileged` (Attorney-Client Privileged Material)

## APPROVED REGULATORY TRIGGERS
- `gdpr` (General Data Protection Regulation)
- `ccpa_cpra` (California Consumer Privacy Act / CPRA)
- `hipaa` (Health Insurance Portability and Accountability Act)
- `pci_dss` (Payment Card Industry Data Security Standard)
- `breach_notification_laws` (General US State Breach Notification Laws)
- `ftc_act` (Federal Trade Commission Act Section 5)
- `ny_shield` (New York SHIELD Act)
- `lgpd` (Brazilian General Data Protection Law)
- `pipeda` (Canadian Personal Information Protection and Electronic Documents Act)
- `none` (No specific regulatory trigger identified)

## OUTPUT SCHEMA
{
  "event_id": "string, unique identifier for this event log entry",
  "event_type": "data_breach_notification_event",
  "incident_id": "string, reference to the parent incident",
  "discovery_timestamp": "string, ISO 8601 timestamp of breach discovery",
  "recorded_timestamp": "string, ISO 8601 timestamp of this log creation",
  "severity": "string, enum from severity list",
  "status": "string, one of: new, investigating, notified, remediated, closed",
  "affected_subjects": {
    "count_estimated": "integer or null, estimated number of affected individuals",
    "count_confirmed": "integer or null, confirmed number of affected individuals",
    "subject_types": ["array of strings, e.g., customer, employee, patient, partner, unknown"],
    "jurisdictions": ["array of strings, e.g., US-CA, EU-DE, BR, CA-QC"]
  },
  "data_categories": ["array of strings from approved taxonomy"],
  "breach_cause": "string, one of: malicious_attack, system_glitch, human_error, lost_stolen_device, third_party_breach, unknown",
  "discovery_method": "string, enum from discovery method list",
  "regulatory_triggers": ["array of strings from approved regulation list"],
  "notification_obligations": {
    "regulator_notification_required": "boolean",
    "regulator_deadline": "string or null, ISO 8601 date by which regulator must be notified",
    "subject_notification_required": "boolean",
    "subject_deadline": "string or null, ISO 8601 date by which subjects must be notified",
    "media_notification_required": "boolean"
  },
  "source_system": "string, system that detected or reported the breach",
  "reporter": {
    "name": "string or null",
    "role": "string or null",
    "contact": "string or null"
  },
  "evidence_references": ["array of strings, links or IDs to evidence artifacts"],
  "notes": "string or null, additional context"
}

## INSTRUCTIONS
1. Analyze the incident description to extract all relevant facts.
2. Map affected data types to the approved data category taxonomy.
3. Determine applicable regulatory triggers based on data categories, subject jurisdictions, and subject types.
4. Assess notification obligations based on regulatory triggers and breach scope.
5. Populate the JSON schema completely, using `null` or `[]` where information is unavailable.
6. Output only the valid JSON object.

To adapt this prompt for your environment, replace the [INCIDENT_DESCRIPTION] placeholder with the actual incident narrative. You should also customize the approved taxonomies and regulatory lists to match your organization's specific compliance obligations and data classification policies. For high-risk production use, always pipe the generated JSON through a schema validator before ingestion into your incident management system. Implement a retry loop with a maximum of two additional attempts if validation fails, and log all failures for human review. This prompt is designed for single-turn structured generation; do not use it in a conversational context where the model might drift from the schema.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Data Breach Notification Event Log Prompt. Each placeholder must be populated before the prompt is sent. Validation notes describe how to check input quality before generation.

PlaceholderPurposeExampleValidation Notes

[BREACH_SUMMARY]

Narrative description of the breach incident from the incident response team

Unauthorized access to customer support database containing PII for 12,400 EU-based users discovered during routine audit on 2025-01-15

Must be non-empty string. Check for minimum 50 characters to ensure sufficient context. Reject summaries that lack a discovery method or affected system name.

[DATA_CATEGORIES]

List of data categories involved in the breach, drawn from a controlled taxonomy

["PII", "payment_card_data", "health_insurance_id"]

Validate each value against the approved data category taxonomy. Reject any category not in the allowed enum. At least one category required.

[AFFECTED_SUBJECT_COUNT]

Number of individuals whose data was potentially exposed

12400

Must be a positive integer. Reject zero, negative, or non-numeric values. If exact count unknown, use best estimate with a note in [BREACH_SUMMARY].

[DISCOVERY_TIMESTAMP]

ISO 8601 timestamp when the breach was first identified by the organization

2025-01-15T14:30:00Z

Must parse as valid ISO 8601 with timezone offset. Reject timestamps in the future or more than 90 days in the past without an override flag. Format check required before prompt assembly.

[AFFECTED_JURISDICTIONS]

List of legal jurisdictions where affected subjects reside

["EU-EEA", "US-CA", "BR"]

Validate each jurisdiction code against the supported jurisdiction registry. At least one jurisdiction required. Null not allowed. Triggers regulatory obligation mapping downstream.

[BREACH_SOURCE]

Origin of the breach: internal system, third-party processor, or unknown

third-party_processor

Must match controlled enum: internal_system, third-party_processor, physical_theft, unknown. Reject unmapped values. Determines attribution fields in the output log.

[REGULATORY_TRIGGERS]

List of regulations that may require notification based on jurisdiction and data categories

["GDPR", "CCPA", "LGPD"]

Validate each trigger against the known regulation registry. Cross-check with [AFFECTED_JURISDICTIONS] for consistency. Flag if a jurisdiction has no corresponding trigger.

[NOTIFICATION_DEADLINE]

Earliest regulatory deadline for notifying authorities or affected subjects, in ISO 8601 date format

2025-02-14

Must be a valid ISO 8601 date. Must be after [DISCOVERY_TIMESTAMP]. Reject dates more than 90 days after discovery without justification. Null allowed if no deadline applies.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Data Breach Notification Event Log Prompt into a privacy engineering workflow with validation, retries, and human review.

This prompt is designed to be called from a privacy incident response pipeline, not a free-text chat interface. The application layer should supply the incident narrative and known metadata (discovery timestamp, affected system, initial reporter) as [CONTEXT]. The prompt template expects a [DATA_CATEGORY_TAXONOMY] and a [REGULATORY_REQUIREMENT_MAP] to be injected at call time so the model can classify data types and flag relevant obligations without hallucinating legal references. In production, these taxonomies should be maintained as configuration files or database tables, not hardcoded in the prompt, so they can be updated when regulations change without retesting the entire prompt.

Wire the prompt into a structured output API call with response_format set to json_schema and a schema that enforces the data_categories, affected_subjects, regulatory_triggers, and discovery_timestamp fields. After receiving the model response, run a validation layer that checks: (1) every data_category value exists in the supplied taxonomy, (2) discovery_timestamp is ISO 8601, (3) affected_subject_count is a positive integer, and (4) every regulatory_trigger key maps to a known regulation in the requirement map. If validation fails, retry once with the validation errors appended to [CONSTRAINTS] so the model can self-correct. If the second attempt also fails, route the record to a human review queue rather than silently ingesting a malformed entry. Log every generation attempt—including the raw prompt, model response, validation result, and reviewer decision—as an audit trail for your own compliance evidence.

Model choice matters here. Use a model with strong schema-following behavior and low refusal rates on security-sensitive content. Avoid routing this prompt through general-purpose chat models that may append conversational disclaimers or refuse to classify breach data. If your deployment requires air-gapped or local-only processing, test the prompt against your chosen open-weight model with the same validation harness before relying on it in an incident. Do not bypass human review when the model flags a regulatory trigger you have not previously tested; a false negative on a notification obligation carries legal risk that no prompt eval can fully absorb.

IMPLEMENTATION TABLE

Expected Output Contract

Fields, types, and validation rules for the Data Breach Notification Event Log. Use this contract to build a post-generation validator that rejects malformed records before they reach downstream compliance systems.

Field or ElementType or FormatRequiredValidation Rule

event_id

string (UUID v4)

Must match UUID v4 regex. Reject on parse failure.

event_type

enum: discovery, notification_triggered, notification_sent, regulator_notified, remediation_completed

Must be exactly one of the listed enum values. Reject unknown values.

discovery_timestamp

string (ISO 8601 UTC)

Must parse as valid ISO 8601 with UTC offset. Reject if timestamp is in the future.

data_categories

array of enum strings

Each element must be from the approved taxonomy: PII, PHI, PCI, credentials, financial, biometric, behavioral, communications, other. Reject if array is empty or contains unknown values.

affected_subject_count

integer

Must be a positive integer. Reject if null, zero, negative, or non-integer.

regulatory_triggers

array of enum strings

Each element must be from: GDPR, CCPA, HIPAA, PCI_DSS, NYDFS, LGPD, PIPEDA, none. Reject if array contains unknown values. Allow empty array only if event_type is discovery.

source_system

string

Must be a non-empty string matching the pattern ^[a-z0-9_-]+$. Reject on pattern mismatch.

remediation_status

enum: not_started, in_progress, contained, resolved

Must be exactly one of the listed enum values. Reject unknown values.

PRACTICAL GUARDRAILS

Common Failure Modes

What breaks first when generating data breach notification event logs and how to guard against it in production.

01

Regulatory Trigger Misclassification

What to watch: The model selects the wrong regulatory trigger (e.g., GDPR vs. CCPA) or misses a required trigger entirely, causing compliance exposure. Guardrail: Provide a closed enum of allowed triggers in the schema and add a post-generation validation step that cross-references data categories against a regulatory requirements map before the record is accepted.

02

Data Category Taxonomy Drift

What to watch: The model invents data categories outside the approved taxonomy (e.g., 'personal_info' instead of 'PII') or misclassifies sensitive data types, breaking downstream reporting. Guardrail: Enforce a strict controlled vocabulary for data categories in the prompt and implement a validator that rejects any output containing out-of-vocabulary terms, logging the anomaly for review.

03

Timestamp Inconsistency and Localization Errors

What to watch: The model generates timestamps in the wrong format, omits timezone offsets, or uses relative time expressions ('yesterday') instead of ISO 8601, causing ingestion failures in SIEM or ticketing systems. Guardrail: Explicitly require ISO 8601 UTC format in the prompt schema and add a regex-based format validator in the application layer before the record is written to any log.

04

Affected Subject Count Inflation or Omission

What to watch: The model hallucinates an exact number of affected subjects when only a range is known, or omits the field entirely, leading to inaccurate regulatory filings. Guardrail: Instruct the model to use a structured object with estimated_min, estimated_max, and is_exact boolean fields, and flag records where is_exact is true but no precise count source is cited.

05

Source Attribution Gaps

What to watch: The model fails to link the notification record to the specific detection source (e.g., SIEM alert ID, manual report ticket), making audit trails untraceable. Guardrail: Require a non-nullable discovery_source object with source_type and source_id fields in the schema, and validate that the source_id matches expected formats before accepting the output.

06

Confidential Data Leakage in Log Fields

What to watch: The model includes actual PII, credentials, or raw payload data in the notification summary or description fields, creating a secondary data exposure risk. Guardrail: Add a pre-output sanitization step that scans generated text for patterns matching PII (emails, credit cards, SSNs) and either redacts them or routes the record for human review before storage.

IMPLEMENTATION TABLE

Evaluation Rubric

Use these criteria to test the quality of generated breach notification records before integrating them into a compliance workflow. Each row defines a pass standard, a failure signal to watch for, and a test method that can be automated.

CriterionPass StandardFailure SignalTest Method

Data Category Taxonomy Adherence

Every value in [DATA_CATEGORIES] matches an entry in the approved taxonomy list exactly.

Output contains a category like 'PII' when the taxonomy requires 'Personal Identifiable Information (PII)'.

Parse the output JSON, extract all values from the [DATA_CATEGORIES] array, and assert each is a member of the controlled vocabulary set.

Regulatory Trigger Mapping

Each entry in [REGULATORY_TRIGGERS] maps to at least one valid regulation from the provided [JURISDICTION] rules.

A record for a GDPR jurisdiction lists 'HIPAA' as a trigger, or a trigger is a hallucinated regulation name.

Cross-reference each trigger string against a preloaded mapping of jurisdiction-to-valid-regulations. Flag any trigger not found in the mapping.

Affected Subject Count Consistency

The integer in [AFFECTED_SUBJECT_COUNT] is greater than 0 and does not contradict the [AFFECTED_SUBJECT_DESCRIPTION] text.

The count is 0, negative, or null, while the description states 'multiple customer records were exposed'.

Assert that [AFFECTED_SUBJECT_COUNT] is an integer > 0. If the description implies zero subjects, the count must be 0.

Discovery Timestamp Format

[DISCOVERY_TIMESTAMP] strictly conforms to ISO 8601 format (YYYY-MM-DDThh:mm:ssZ).

Timestamp is '2024-11-05' (date only) or 'November 5, 2024 14:00 UTC'.

Parse the string with an ISO 8601 datetime parser. The test fails if parsing throws an error or the timezone offset is missing.

Required Field Presence

All fields defined in the [OUTPUT_SCHEMA] as 'required: true' are present and non-null.

The [BREACH_ID] or [DISCOVERY_TIMESTAMP] field is missing or has a null value.

Validate the output JSON against the [OUTPUT_SCHEMA]. The test fails if the schema validator returns any required field errors.

Breach ID Format

[BREACH_ID] matches the pattern 'BR-YYYY-NNNNN' where YYYY is the discovery year and NNNNN is a zero-padded 5-digit sequence.

The ID is 'BR-24-001' or 'INC-2024-00001'.

Apply a regex pattern match to the [BREACH_ID] string. Fail if the string does not match the expected format.

Notification Urgency Classification

[NOTIFICATION_URGENCY] is one of the predefined enum values: 'Immediate', 'Standard', or 'Deferred'.

The urgency is 'High' or 'ASAP'.

Assert that the value of [NOTIFICATION_URGENCY] is a member of the allowed enum set. Fail on any case-insensitive mismatch or out-of-set value.

Source Attribution Grounding

The [SOURCE_SYSTEM] field contains a valid, non-generic identifier for the detecting system (e.g., 'crowdstrike-falcon', 'aws-guardduty').

The source is 'unknown', 'manual report', or an empty string without a corresponding human approval flag.

Check that [SOURCE_SYSTEM] is not null and not in a blocklist of generic terms. If the source is human, require [HUMAN_APPROVAL_FLAG] to be true.

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Use the base prompt with a simplified output schema. Remove regulatory trigger mapping and data category taxonomy validation. Accept free-text fields for affected_data_categories and regulatory_triggers instead of controlled vocabularies. Add a note in the prompt: [CONSTRAINTS] Output valid JSON only. Do not validate field values against external taxonomies.

Watch for

  • Inconsistent data category naming across records
  • Missing regulatory trigger fields when breach scope is unclear
  • Timestamp format drift between ISO 8601 variants
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.