Inferensys

Prompt

Representations and Warranties Extraction Prompt

A practical prompt playbook for extracting representations and warranties from purchase agreements, merger documents, and due diligence materials in production AI workflows.
Stylish WeWork-like workspace with hot desks and document wall, professional searching through enterprise knowledge base on a mounted ultrawide display, warm industrial pendants overhead.
PROMPT PLAYBOOK

When to Use This Prompt

Understand the ideal use cases, required inputs, and boundaries for the Representations and Warranties Extraction Prompt.

This prompt is designed for M&A and due diligence teams who need to extract representations and warranties from transaction documents at scale. It produces structured outputs that capture the rep statement text, survival periods, knowledge qualifiers, materiality scrapes, and disclosure schedule references. Use this prompt when you need to build a rep and warranty index, compare seller and buyer reps across deal documents, or feed structured rep data into downstream risk assessment and negotiation playbooks.

The prompt assumes you have already extracted or chunked the relevant contract sections and are providing clean text input. It does not handle scanned PDFs, handwriting, or multi-document cross-referencing on its own. For those cases, pair this prompt with OCR-aware preprocessing and document structure parsing prompts from the Document Intelligence pillar. The output schema is designed to be ingested by a database or risk analysis tool, not to produce a final legal memo. Always route outputs through a validation layer that checks for missing qualifiers, incorrect survival period formats, and hallucinated disclosure schedule references before the data enters a system of record.

Do not use this prompt for real-time negotiation support, for generating legal advice, or as a substitute for attorney review. It is a structured extraction tool that reduces manual data entry and speeds up diligence, but it does not interpret the legal effect of a representation. For workflows that require comparing extracted reps against a negotiation playbook or scoring risk, chain this prompt's output into the Clause Risk Scoring and Playbook Alignment Prompt. For production deployments, implement a human review step for any rep flagged with a low confidence score or an unrecognized qualifier hierarchy.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Representations and Warranties Extraction Prompt delivers reliable results and where it introduces operational risk. Use this card set to decide if the prompt fits your workflow before integrating it into a production pipeline.

01

Good Fit: Structured M&A Due Diligence

Use when: extracting rep and warranty statements from purchase agreements, merger agreements, and disclosure schedules with clear section numbering. Guardrail: the prompt performs best when documents follow standard M&A drafting conventions and section hierarchies are machine-readable.

02

Bad Fit: Unstructured or Scanned Handwritten Documents

Avoid when: source documents are heavily redacted, handwritten, or lack any section structure. Guardrail: require OCR preprocessing and layout-aware extraction before passing text to this prompt. Documents with illegible regions should be flagged for human review before extraction is attempted.

03

Required Inputs

What you must provide: full contract text with preserved section numbering, a defined output schema specifying rep/warranty fields, and a qualifier taxonomy for knowledge, materiality, and survival terms. Guardrail: missing section numbers or flattened text will cause citation boundary errors and hallucinated clause locations.

04

Operational Risk: Qualifier Hierarchy Confusion

What to watch: the model may conflate knowledge qualifiers with materiality scrapes or misorder qualifier precedence when multiple qualifiers apply to a single representation. Guardrail: implement a post-extraction validation step that checks qualifier hierarchy against a predefined taxonomy and flags ambiguous combinations for human review.

05

Operational Risk: Sandbagging Provision Misses

What to watch: anti-sandbagging provisions and knowledge-qualifier override language are often embedded in definition sections or schedules rather than in the rep and warranty clauses themselves. Guardrail: pair this prompt with a cross-reference resolution step that pulls in defined terms and schedule references before final extraction.

06

Operational Risk: Disclosure Schedule Gaps

What to watch: representations qualified by disclosure schedules may appear clean in the main agreement text while the schedule contains material exceptions. Guardrail: never treat extraction as complete without confirming disclosure schedule availability. Flag all schedule-qualified reps with a schedule_pending marker until schedules are ingested and cross-referenced.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A copy-ready prompt for extracting representations and warranties with their qualifiers, survival periods, and disclosure schedule references.

This template is designed to be pasted directly into your system instructions or as a user message for a capable language model. It instructs the model to act as a precise extraction engine, isolating representations and warranties from a provided contract. The prompt is structured to capture not just the statement itself, but the critical legal nuances that surround it: knowledge qualifiers, materiality scrapes, survival periods, and references to disclosure schedules. The output is a strict JSON schema, making it suitable for direct ingestion into a downstream due diligence checklist or contract review platform.

text
You are a precise legal document extraction engine. Your task is to identify and extract all representations and warranties from the provided [CONTRACT_TEXT].

For each representation or warranty found, extract the following information into a structured JSON object. If a field is not present or cannot be determined, use `null`.

## Output Schema
Return a JSON object with a single key `"representations_and_warranties"` containing an array of objects. Each object must have these fields:
- `"statement"`: (string) The exact text of the representation or warranty.
- `"section_reference"`: (string) The section, article, or schedule number where it was found (e.g., "Section 3.1(a)").
- `"party_making_statement"`: (string) The party providing the representation (e.g., "Seller", "Company").
- `"subject_matter"`: (string) A concise category for the statement (e.g., "Organization and Good Standing", "Financial Statements", "Litigation").
- `"knowledge_qualifier"`: (string or null) The exact text of any knowledge qualifier (e.g., "to the best of Seller's knowledge").
- `"materiality_qualifier"`: (string or null) The exact text of any materiality qualifier or scrape (e.g., "in all material respects", "Material Adverse Effect").
- `"survival_period"`: (string or null) The duration the representation survives closing, if specified (e.g., "12 months", "until the expiration of the applicable statute of limitations").
- `"disclosure_schedule_reference"`: (string or null) Any reference to a disclosure schedule that qualifies the statement (e.g., "except as set forth on Schedule 3.1").
- `"is_sandbagging_provision"`: (boolean) `true` if the clause explicitly addresses the buyer's right to seek indemnification for breaches it knew about before closing. Otherwise, `false`.

## Constraints
- Extract the statement text verbatim. Do not paraphrase.
- If a single sentence contains multiple representations, separate them into distinct objects.
- Pay close attention to the hierarchy of qualifiers. A knowledge qualifier can be nested inside a materiality qualifier. Capture both independently.
- If a survival period is defined in a separate survival clause but explicitly linked to this representation, capture it. If it's a general survival clause with no explicit link, use `null`.

## Input
[CONTRACT_TEXT]

To adapt this prompt, replace the [CONTRACT_TEXT] placeholder with the full text of the agreement you are analyzing. For production systems, you will likely need to pre-process the document to extract clean text and segment it into manageable chunks, as a single contract can easily exceed a model's context window. Consider pairing this extraction prompt with a document structure parsing prompt to first identify the section hierarchy, then run this extraction on individual articles. The output schema is designed to be validated programmatically; a post-processing step should check for valid JSON, correct data types, and non-null values for the statement and section_reference fields. In high-stakes M&A due diligence, a human reviewer must always verify the extracted statements against the original document, as a missed qualifier or misattributed survival period can have significant financial consequences.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Representations and Warranties Extraction Prompt. Each placeholder must be populated before the prompt is sent to the model. Validation notes describe how to check the input quality before execution.

PlaceholderPurposeExampleValidation Notes

[FULL_CONTRACT_TEXT]

The complete text of the acquisition agreement, merger agreement, or stock purchase agreement from which representations and warranties will be extracted.

Full text of an APA or SPA including all sections, schedules, and exhibits.

Must contain at least one section header matching 'Representations and Warranties' or 'Reps and Warranties'. Reject if document is under 500 words or contains only a table of contents.

[PARTY_NAMES]

Comma-separated list of party names as they appear in the contract, used to attribute representations to the correct party.

Buyer: Acme Corp; Seller: Beta Industries, Inc.; Target: Gamma LLC

Parse check: must contain at least two distinct entities. Each name should appear in [FULL_CONTRACT_TEXT] at least once. Flag if a party name is not found in the document.

[DISCLOSURE_SCHEDULE_REFERENCE]

The exact label or section number referencing the disclosure schedules, used to identify materiality scrape and schedule exception language.

Disclosure Schedules dated as of the Closing Date; Schedule 3.1(a)

Must match a cross-reference pattern in the contract (e.g., 'Schedule', 'Disclosure Letter', 'Disclosure Schedules'). Null allowed if no disclosure schedule is referenced, but flag for human review.

[SURVIVAL_PERIOD_DEFAULT]

The default survival period for representations and warranties if not explicitly stated in a specific clause, expressed in months.

18 months

Must be a positive integer or a parseable duration string (e.g., '12 months', '1 year'). Convert to months for internal consistency. Reject if non-numeric or ambiguous ('indefinite' requires human review flag).

[KNOWLEDGE_QUALIFIER_DEFINITION]

The contract's definition of 'Knowledge' or 'to the Knowledge of' as it applies to representations and warranties, used to classify qualifier strength.

Actual knowledge of the executive officers listed on Schedule 1.1 after reasonable inquiry

Extract from Definitions section or first usage in Reps and Warranties article. If not found, set to 'Not defined in contract' and flag for human review. Parse check: must be a string under 500 characters.

[MATERIALITY_SCRAPE_DETECTION]

Boolean flag indicating whether the prompt should actively detect and classify materiality scrapes, sandbagging provisions, and anti-sandbagging language.

Must be 'true' or 'false'. If 'true', the output schema must include fields for materiality_scrape_type and sandbagging_provision. If 'false', those fields may be omitted from the output contract.

[OUTPUT_SCHEMA]

The JSON schema definition that each extracted representation must conform to, including required fields, enum values, and nullable fields.

{ 'rep_id': 'string', 'rep_text': 'string', 'party': 'string', 'survival_period_months': 'int|null', 'knowledge_qualifier': 'enum|null', 'materiality_scrape': 'enum|null', 'disclosure_schedule_ref': 'string|null', 'sandbagging_flag': 'boolean' }

Validate schema is valid JSON and contains at minimum: rep_id, rep_text, party, and survival_period_months. Enum values for knowledge_qualifier must include: 'actual_knowledge', 'constructive_knowledge', 'reasonably_expected_to_know', 'none', 'not_specified'. Reject schema if enums are missing.

[CONFIDENCE_THRESHOLD]

Minimum confidence score (0.0 to 1.0) required for a representation to be included in the output. Representations below this threshold should be flagged for human review.

0.85

Must be a float between 0.0 and 1.0. Values below 0.7 should trigger a warning that extraction recall may suffer. Values above 0.95 may cause excessive human review flags. Recommend 0.80-0.90 for production use.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Representations and Warranties Extraction Prompt into a production due diligence or M&A contract review application.

This prompt is designed to be a single step within a larger document processing pipeline. It should not be called in isolation on raw, unprocessed PDFs. The upstream system must first parse the document, extract text with layout awareness, and segment it into manageable chunks—ideally at the section or article level. The prompt expects a clean text block as the [CONTRACT_SECTION] input. Feeding it an entire 80-page purchase agreement will degrade extraction quality and increase the risk of hallucinated or merged provisions. For production use, implement a pre-processing stage that identifies the 'Representations and Warranties' article using a document structure parser or a classification router before invoking this extraction prompt.

The output is a structured JSON array of representations. Each object must be validated against the defined [OUTPUT_SCHEMA] before it is stored. Implement a post-processing validation layer that checks for required fields (statement, survival_period, knowledge_qualifier, materiality_scrape, disclosure_schedule_reference), enforces enum values for knowledge_qualifier and materiality_scrape, and flags any confidence_score below a configurable threshold (e.g., 0.85) for human review. A common failure mode is the model merging two distinct representations into a single object or splitting a single complex sentence into fragments. A structural validator should check for unusually long statement strings and flag them for decomposition, and conversely, flag objects with identical disclosure_schedule_reference values that may need merging.

For high-stakes M&A workflows, a human-in-the-loop review step is non-negotiable. Route all extractions with confidence_score below your threshold, detected sandbagging provisions (sandbagging_provision: true), or missing survival periods to a review queue. Log the full prompt, the raw model response, and the validated output for auditability. When selecting a model, prioritize those with strong legal text reasoning and structured output capabilities. Implement retry logic with a maximum of two attempts for schema validation failures, using a repair prompt that includes the original input, the failed output, and the specific validation errors. If the retry also fails, escalate to human review rather than silently dropping the record. This prompt is a high-precision extraction tool, not a replacement for legal judgment; always ensure a qualified professional reviews the final output before it informs a transaction decision.

IMPLEMENTATION TABLE

Expected Output Contract

Defines the structured JSON fields, types, and validation rules for the Representations and Warranties extraction output. Use this contract to build downstream parsers, validators, and database schemas.

Field or ElementType or FormatRequiredValidation Rule

rep_warranty_id

string

Must match pattern RW-###. Unique per extracted statement within the document.

statement_text

string

Must be a verbatim quote from the source document. Validate by substring match against source text.

party_making_rep

string

Must be one of the enumerated parties identified in the document preamble. Null if ambiguous.

survival_period

string

Must conform to ISO 8601 duration format (e.g., P18M) or be a specific date. Null if not stated.

knowledge_qualifier

string

Must be one of actual-knowledge, constructive-knowledge, best-of-knowledge, none. Null if no qualifier.

materiality_scrape

boolean

Must be true if a materiality qualifier is present in the statement, else false.

disclosure_schedule_ref

string

Must match a schedule identifier pattern (e.g., Schedule 3.1(a)). Null if no reference.

sandbagging_provision

boolean

Must be true if the statement includes an anti-sandbagging or pro-sandbagging clause, else false.

PRACTICAL GUARDRAILS

Common Failure Modes

Representations and warranties extraction is high-stakes. These failures surface first in production and can corrupt downstream due diligence, deal models, and disclosure schedules.

01

Qualifier Hierarchy Collapse

What to watch: The model flattens nested qualifiers like 'to the best of Seller's knowledge, after due inquiry' into a simple 'Seller represents.' This erases the knowledge standard and inflates apparent risk. Guardrail: Add a dedicated qualifier extraction field in the output schema and test with a golden set of multi-tier qualifier examples. Require the model to preserve the full qualifier chain verbatim before summarizing.

02

Disclosure Schedule Reference Omission

What to watch: The model extracts a clean representation but drops the 'except as set forth on Schedule 3.14(b)' carve-out. The output looks complete but is materially wrong. Guardrail: Add a required disclosure_schedule_references array field. Validate that every extracted representation with a schedule reference in the source text has a non-empty array. Flag empty arrays for human review.

03

Materiality Scrape Misclassification

What to watch: The model treats a Materiality Qualifier (e.g., 'in all material respects') as a Materiality Scrape (e.g., 'materiality shall be disregarded for indemnification purposes'). This misclassifies the economic effect of the provision. Guardrail: Include a binary is_materiality_scrape field with explicit definitions and counterexamples in the prompt. Run a targeted eval set of 20+ scrape vs. qualifier examples before deployment.

04

Survival Period Boundary Drift

What to watch: The model extracts 'survives for 18 months' but misses the trigger event: 'after Closing' vs. 'after the applicable statute of limitations.' The survival period is correct but the boundary is wrong. Guardrail: Require a structured survival_period object with duration, unit, and trigger_event fields. Validate that trigger_event is never null when duration is present. Log null triggers for manual review.

05

Sandbagging Provision False Negatives

What to watch: The model fails to detect anti-sandbagging or pro-sandbagging language when it appears in non-standard phrasing or is implied through cross-reference. Silent false negatives let deal teams miss a key negotiation point. Guardrail: Add a sandbagging_detection field with enum values pro_sandbagging, anti_sandbagging, silent, and ambiguous. Include 10+ variant phrasings in few-shot examples. Escalate ambiguous results for attorney review.

06

Knowledge Qualifier Entity Confusion

What to watch: The model attributes a knowledge qualifier to 'Seller' when the actual text says 'to the knowledge of the Company's executive officers.' The entity scope is wrong, changing who bears the knowledge risk. Guardrail: Extract knowledge qualifiers into a structured object with knowledge_bearer, inquiry_standard, and deemed_knowledge fields. Cross-validate that the extracted bearer matches the party defined in the preamble or definitions section.

IMPLEMENTATION TABLE

Evaluation Rubric

Criteria for testing the quality of extracted representations and warranties before shipping the prompt to production. Use these checks to validate output correctness, completeness, and structural integrity.

CriterionPass StandardFailure SignalTest Method

Representation Statement Extraction

Every representation statement in the source is extracted as a discrete item with its full text

Missing representation statements or truncated text that cuts off qualifiers

Compare count of extracted items against manual count from source document; spot-check 5 random statements for text completeness

Qualifier Hierarchy Preservation

Knowledge qualifiers (e.g., to the best of knowledge), materiality qualifiers (e.g., in all material respects), and time qualifiers are correctly attached to their parent representation

Qualifier attached to wrong representation or omitted entirely

Parse output for qualifier fields; verify parent-child linkage matches source for 10 qualifier-bearing statements

Survival Period Extraction

Survival period is extracted with duration, unit, and start trigger when explicitly stated; null when not specified

Survival period populated when source is silent or wrong duration/unit extracted

Check survival_period field for null vs. populated accuracy against 5 known survival clauses

Disclosure Schedule Reference Capture

Every disclosure schedule reference (e.g., Schedule 3.14) is extracted with section number and linked to its representation

Disclosure schedule reference missing or linked to wrong representation

Grep output for schedule references; verify all source references appear and are correctly mapped

Sandbagging Provision Detection

Sandbagging or anti-sandbagging language is flagged with provision type and source citation

Sandbagging provision not detected when present or false positive when absent

Run prompt against 3 contracts with known sandbagging provisions and 3 without; check detection accuracy

Materiality Scrape Identification

Materiality scrapes are identified with their scope (e.g., for purposes of this section only) and linked to the affected representation

Materiality scrape missed or scope incorrectly bounded

Parse output for materiality_scrape field; verify presence and scope against 3 contracts with known scrape language

Output Schema Compliance

All required fields are present and non-null where source data exists; optional fields are null when data is absent

Missing required fields, null in required fields when source data exists, or hallucinated values in optional fields

Validate output against JSON schema; run automated schema compliance check on 20 sample outputs

Citation Boundary Accuracy

Each extracted item cites the correct section, page, or paragraph range from the source document

Citation points to wrong section or citation range includes text outside the representation

Randomly sample 10 citations and verify against source document location; acceptable error rate is 0%

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base prompt and a single representative M&A agreement. Remove strict schema enforcement initially—use a looser JSON structure to test extraction quality before locking down fields. Focus on getting the model to identify rep and warranty statements and their survival periods correctly.

Simplify the prompt by removing the qualifier hierarchy, materiality scrape, and sandbagging detection instructions. Add those back once core extraction works.

Watch for

  • The model conflating representations with covenants or conditions precedent
  • Missing survival period extraction when the period is stated elsewhere in the agreement
  • Over-extraction: pulling in preamble language or recitals as representations
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.