← Back

protocol-002-en extraction

100.0%
Model: gemini-2.0-flash
Latency: 7.636s
Tokens: 1507/1004
Cost: $0.0006
PDF Document
Extracted Data
Comparison
Fields
Raw Text
Prompts
Schema
LLM Extracted Data
{
  "absentees": [],
  "agendaItems": [
    "enable out-of-the-box functionalities",
    "scale world-class solutions",
    "empower B2B infrastructures",
    "engineer strategic synergies"
  ],
  "attendees": [
    {
      "name": "Brad Schamberger",
      "title": "Regional Markets Manager"
    },
    {
      "name": "Gwen Hermiston",
      "title": "Central Marketing Director"
    },
    {
      "name": "Ronald Barrows",
      "title": "Customer Division Strategist"
    },
    {
      "name": "Carlos Will",
      "title": "Lead Metrics Executive"
    },
    {
      "name": "Mrs. Miriam Lesch",
      "title": "Product Applications Engineer"
    }
  ],
  "chairman": {
    "name": "Fernando Reichert",
    "title": "Product Paradigm Facilitator"
  },
  "date": "2025-08-29",
  "endTime": "12:00",
  "location": "Little, Champlin and Ratke Headquarters, Leonorport",
  "meetingNumber": "2026-2",
  "meetingType": "extraordinary_general_meeting",
  "resolutions": [
    {
      "abstentions": 1,
      "description": "Suadeo peior tamdiu vox benigne. Quae debitis cognatus defetiscor. Attonbitus patruus aliquid aptus.",
      "number": "1",
      "passed": true,
      "title": "expedite synergistic synergies",
      "votesAgainst": 1,
      "votesFor": 3
    },
    {
      "abstentions": 1,
      "description": "Supra abbas abscido conventus abundans vinculum coaegresco concido. Allatus cibo vulnero aggredior corrigo\napto. Teneo brevis super theologus casus.",
      "number": "2",
      "passed": true,
      "title": "unleash impactful relationships",
      "votesAgainst": 0,
      "votesFor": 4
    },
    {
      "abstentions": 0,
      "description": "Creptio aiunt desino tres cilicium. Vix capto adflicto pariatur cruentus est. Attollo tepidus conspergo.",
      "number": "3",
      "passed": false,
      "title": "architect distributed supply-chains",
      "votesAgainst": 3,
      "votesFor": 2
    },
    {
      "abstentions": 1,
      "description": "Ullam beatae suasoria desolo denego tubineus sint attollo eveniet cognomen. Nobis consuasor amitto causa\nsequi minima colo. Explicabo timor ultra argumentum eum.",
      "number": "4",
      "passed": false,
      "title": "empower end-to-end large language models",
      "votesAgainst": 2,
      "votesFor": 2
    },
    {
      "abstentions": 1,
      "description": "Alter quasi valde mollitia adversus commodo. Damno substantia sit vox. Utique admoneo defessus enim defendo\nconforto summa tergo conduco.",
      "number": "5",
      "passed": false,
      "title": "deliver dynamic interfaces",
      "votesAgainst": 2,
      "votesFor": 2
    }
  ],
  "secretary": {
    "name": "Margarita Blanda",
    "title": "Principal Integration Manager"
  },
  "signatures": [
    {
      "name": "Fernando Reichert",
      "role": "Chairman",
      "signedDate": "2025-08-29",
      "title": "Product Paradigm Facilitator"
    },
    {
      "name": "Margarita Blanda",
      "role": "Secretary",
      "signedDate": "2025-08-29",
      "title": "Principal Integration Manager"
    }
  ],
  "startTime": "10:00"
}
Side-by-Side Comparison

Extracted

{
  "absentees": [],
  "agendaItems": [
    "enable out-of-the-box functionalities",
    "scale world-class solutions",
    "empower B2B infrastructures",
    "engineer strategic synergies"
  ],
  "attendees": [
    {
      "name": "Brad Schamberger",
      "title": "Regional Markets Manager"
    },
    {
      "name": "Gwen Hermiston",
      "title": "Central Marketing Director"
    },
    {
      "name": "Ronald Barrows",
      "title": "Customer Division Strategist"
    },
    {
      "name": "Carlos Will",
      "title": "Lead Metrics Executive"
    },
    {
      "name": "Mrs. Miriam Lesch",
      "title": "Product Applications Engineer"
    }
  ],
  "chairman": {
    "name": "Fernando Reichert",
    "title": "Product Paradigm Facilitator"
  },
  "date": "2025-08-29",
  "endTime": "12:00",
  "location": "Little, Champlin and Ratke Headquarters, Leonorport",
  "meetingNumber": "2026-2",
  "meetingType": "extraordinary_general_meeting",
  "resolutions": [
    {
      "abstentions": 1,
      "description": "Suadeo peior tamdiu vox benigne. Quae debitis cognatus defetiscor. Attonbitus patruus aliquid aptus.",
      "number": "1",
      "passed": true,
      "title": "expedite synergistic synergies",
      "votesAgainst": 1,
      "votesFor": 3
    },
    {
      "abstentions": 1,
      "description": "Supra abbas abscido conventus abundans vinculum coaegresco concido. Allatus cibo vulnero aggredior corrigo\napto. Teneo brevis super theologus casus.",
      "number": "2",
      "passed": true,
      "title": "unleash impactful relationships",
      "votesAgainst": 0,
      "votesFor": 4
    },
    {
      "abstentions": 0,
      "description": "Creptio aiunt desino tres cilicium. Vix capto adflicto pariatur cruentus est. Attollo tepidus conspergo.",
      "number": "3",
      "passed": false,
      "title": "architect distributed supply-chains",
      "votesAgainst": 3,
      "votesFor": 2
    },
    {
      "abstentions": 1,
      "description": "Ullam beatae suasoria desolo denego tubineus sint attollo eveniet cognomen. Nobis consuasor amitto causa\nsequi minima colo. Explicabo timor ultra argumentum eum.",
      "number": "4",
      "passed": false,
      "title": "empower end-to-end large language models",
      "votesAgainst": 2,
      "votesFor": 2
    },
    {
      "abstentions": 1,
      "description": "Alter quasi valde mollitia adversus commodo. Damno substantia sit vox. Utique admoneo defessus enim defendo\nconforto summa tergo conduco.",
      "number": "5",
      "passed": false,
      "title": "deliver dynamic interfaces",
      "votesAgainst": 2,
      "votesFor": 2
    }
  ],
  "secretary": {
    "name": "Margarita Blanda",
    "title": "Principal Integration Manager"
  },
  "signatures": [
    {
      "name": "Fernando Reichert",
      "role": "Chairman",
      "signedDate": "2025-08-29",
      "title": "Product Paradigm Facilitator"
    },
    {
      "name": "Margarita Blanda",
      "role": "Secretary",
      "signedDate": "2025-08-29",
      "title": "Principal Integration Manager"
    }
  ],
  "startTime": "10:00"
}

Ground Truth

{
  "absentees": [],
  "agendaItems": [
    "1. enable out-of-the-box functionalities",
    "2. scale world-class solutions",
    "3. empower B2B infrastructures",
    "4. engineer strategic synergies"
  ],
  "attendees": [
    {
      "email": "Roberto.Kerluke66@yahoo.com",
      "name": "Brad Schamberger",
      "title": "Regional Markets Manager"
    },
    {
      "email": "Bridie_Lehner63@gmail.com",
      "name": "Gwen Hermiston",
      "title": "Central Marketing Director"
    },
    {
      "email": "Adolphus_Lubowitz5@hotmail.com",
      "name": "Ronald Barrows",
      "title": "Customer Division Strategist"
    },
    {
      "email": "Tina.Rodriguez51@yahoo.com",
      "name": "Carlos Will",
      "title": "Lead Metrics Executive"
    },
    {
      "email": "Nicholas_Nolan30@hotmail.com",
      "name": "Mrs. Miriam Lesch",
      "title": "Product Applications Engineer"
    }
  ],
  "category": "protocol",
  "chairman": {
    "email": "Joshua32@hotmail.com",
    "name": "Fernando Reichert",
    "title": "Product Paradigm Facilitator"
  },
  "date": "2025-08-29",
  "documentId": "protocol-002-en",
  "endTime": "12:00",
  "location": "Little, Champlin and Ratke Headquarters, Leonorport",
  "meetingNumber": "2026-2",
  "meetingType": "extraordinary_general_meeting",
  "resolutions": [
    {
      "abstentions": 1,
      "description": "Suadeo peior tamdiu vox benigne. Quae debitis cognatus defetiscor. Attonbitus patruus aliquid aptus.",
      "number": 1,
      "passed": true,
      "title": "expedite synergistic synergies",
      "votesAgainst": 1,
      "votesFor": 3
    },
    {
      "abstentions": 1,
      "description": "Supra abbas abscido conventus abundans vinculum coaegresco concido. Allatus cibo vulnero aggredior corrigo apto. Teneo brevis super theologus casus.",
      "number": 2,
      "passed": true,
      "title": "unleash impactful relationships",
      "votesAgainst": 0,
      "votesFor": 4
    },
    {
      "abstentions": 0,
      "description": "Creptio aiunt desino tres cilicium. Vix capto adflicto pariatur cruentus est. Attollo tepidus conspergo.",
      "number": 3,
      "passed": false,
      "title": "architect distributed supply-chains",
      "votesAgainst": 3,
      "votesFor": 2
    },
    {
      "abstentions": 1,
      "description": "Ullam beatae suasoria desolo denego tubineus sint attollo eveniet cognomen. Nobis consuasor amitto causa sequi minima colo. Explicabo timor ultra argumentum eum.",
      "number": 4,
      "passed": false,
      "title": "empower end-to-end large language models",
      "votesAgainst": 2,
      "votesFor": 2
    },
    {
      "abstentions": 1,
      "description": "Alter quasi valde mollitia adversus commodo. Damno substantia sit vox. Utique admoneo defessus enim defendo conforto summa tergo conduco.",
      "number": 5,
      "passed": false,
      "title": "deliver dynamic interfaces",
      "votesAgainst": 2,
      "votesFor": 2
    }
  ],
  "secretary": {
    "email": "Hermina_Welch49@yahoo.com",
    "name": "Margarita Blanda",
    "title": "Principal Integration Manager"
  },
  "signatures": [
    {
      "name": "Fernando Reichert",
      "role": "Chairman",
      "signedDate": "2025-08-29",
      "title": "Product Paradigm Facilitator"
    },
    {
      "name": "Margarita Blanda",
      "role": "Secretary",
      "signedDate": "2025-08-29",
      "title": "Principal Integration Manager"
    }
  ],
  "startTime": "10:00",
  "templateVariant": "default"
}
Field Analysis
Matched
72
Mismatched
0
Missing
0
Accuracy
100.0%

Matched 72

  • ✓ resolutions[2].number
  • ✓ resolutions[4].description
  • ✓ resolutions[4].votesAgainst
  • ✓ resolutions[4].abstentions
  • ✓ attendees[0].name
  • ✓ attendees[0].title
  • ✓ attendees[1].title
  • ✓ attendees[2].name
  • ✓ attendees[3].name
  • ✓ attendees[4].name
  • ✓ chairman.title
  • ✓ resolutions[0].passed
  • ✓ resolutions[3].abstentions
  • ✓ signatures[0].role
  • ✓ signatures._length
  • ✓ attendees[2].title
  • ✓ date
  • ✓ resolutions[0].number
  • ✓ resolutions[2].votesFor
  • ✓ signatures[0].name
  • ✓ attendees[4].title
  • ✓ attendees._length
  • ✓ chairman.name
  • ✓ resolutions[0].votesFor
  • ✓ resolutions[1].number
  • ✓ resolutions[1].title
  • ✓ resolutions[3].description
  • ✓ location
  • ✓ signatures[1].title
  • ✓ absentees._length
  • ✓ resolutions[3].votesAgainst
  • ✓ resolutions[3].passed
  • ✓ resolutions[4].number
  • ✓ resolutions[4].title
  • ✓ agendaItems[1]
  • ✓ startTime
  • ✓ resolutions[0].abstentions
  • ✓ resolutions[0].title
  • ✓ secretary.name
  • ✓ secretary.title
  • ✓ resolutions[2].passed
  • ✓ resolutions._length
  • ✓ agendaItems[0]
  • ✓ agendaItems._length
  • ✓ agendaItems[3]
  • ✓ resolutions[2].description
  • ✓ resolutions[3].votesFor
  • ✓ signatures[1].signedDate
  • ✓ attendees[1].name
  • ✓ resolutions[1].passed
  • ✓ resolutions[1].description
  • ✓ resolutions[2].title
  • ✓ resolutions[3].number
  • ✓ endTime
  • ✓ resolutions[0].votesAgainst
  • ✓ resolutions[4].passed
  • ✓ resolutions[1].votesFor
  • ✓ resolutions[3].title
  • ✓ attendees[3].title
  • ✓ agendaItems[2]
  • ✓ meetingNumber
  • ✓ resolutions[0].description
  • ✓ resolutions[1].abstentions
  • ✓ resolutions[2].votesAgainst
  • ✓ resolutions[2].abstentions
  • ✓ resolutions[4].votesFor
  • ✓ signatures[1].name
  • ✓ meetingType
  • ✓ resolutions[1].votesAgainst
  • ✓ signatures[0].signedDate
  • ✓ signatures[0].title
  • ✓ signatures[1].role
Extracted Text from PDF
MEETING PROTOCOL
Meeting Type: EXTRAORDINARY GENERAL MEETING
Meeting Number: 2026-2
Date: 2025-08-29
Time: 10:00 - 12:00
Location: Little, Champlin and Ratke Headquarters, Leonorport
Officers
Chairman: Fernando Reichert (Product Paradigm Facilitator)
Secretary: Margarita Blanda (Principal Integration Manager)
Attendees
• Brad Schamberger - Regional Markets Manager
• Gwen Hermiston - Central Marketing Director
• Ronald Barrows - Customer Division Strategist
• Carlos Will - Lead Metrics Executive
• Mrs. Miriam Lesch - Product Applications Engineer
Agenda
1. enable out-of-the-box functionalities
2. scale world-class solutions
3. empower B2B infrastructures
4. engineer strategic synergies
Resolutions
Resolution 1: expedite synergistic synergies
Suadeo peior tamdiu vox benigne. Quae debitis cognatus defetiscor. Attonbitus patruus aliquid aptus.
Votes: For: 3, Against: 1, Abstentions: 1
Result: PASSED
Resolution 2: unleash impactful relationships
Supra abbas abscido conventus abundans vinculum coaegresco concido. Allatus cibo vulnero aggredior corrigo
apto. Teneo brevis super theologus casus.
Votes: For: 4, Against: 0, Abstentions: 1
Result: PASSED
Resolution 3: architect distributed supply-chains
Creptio aiunt desino tres cilicium. Vix capto adflicto pariatur cruentus est. Attollo tepidus conspergo.
Votes: For: 2, Against: 3, Abstentions: 0
Result: NOT PASSED
Resolution 4: empower end-to-end large language models
Ullam beatae suasoria desolo denego tubineus sint attollo eveniet cognomen. Nobis consuasor amitto causa
sequi minima colo. Explicabo timor ultra argumentum eum.
Votes: For: 2, Against: 2, Abstentions: 1
Result: NOT PASSED
Resolution 5: deliver dynamic interfaces

Alter quasi valde mollitia adversus commodo. Damno substantia sit vox. Utique admoneo defessus enim defendo
conforto summa tergo conduco.
Votes: For: 2, Against: 2, Abstentions: 1
Result: NOT PASSED
Certification
We hereby certify that these minutes are an accurate record of the proceedings.
_______________________________
Chairman: Fernando Reichert
Product Paradigm Facilitator
Date: 2025-08-29
_______________________________
Secretary: Margarita Blanda
Principal Integration Manager
Date: 2025-08-29
System Prompt
You are a precise document data extraction expert. Your task is to extract structured data from protocol documents.

## Extraction Guidelines

Extract meeting protocol data including:
- Meeting type, number, date, start/end times, location
- Chairman and secretary (name, title, email)
- Attendees and absentees (arrays of objects with name, title, email)
- Agenda items (array of strings)
- Resolutions (number, title, description, votes, passed status)

## Important Rules

1. **Dates**: Always use ISO format (YYYY-MM-DD) for full dates, HH:MM for times
2. **Currency**: Use 3-letter ISO 4217 codes (EUR, USD, GBP, etc.)
3. **Missing optional fields**: Omit them entirely, don't use null or empty strings
4. **Required fields**: Make your best effort to extract; if truly not present, use reasonable placeholder
5. **Numbers**: Extract as numeric values, not strings (except for identifiers like document numbers)
6. **Arrays**: Always return arrays even if only one item exists
7. **Text content**: Preserve important content accurately but you may summarize very long passages
8. **Names**: Extract full names as they appear in the document

Respond with a JSON object containing the extracted data. Be precise and extract only what is explicitly stated in the document.
User Prompt
Please extract all structured data from this protocol document:

---
MEETING PROTOCOL
Meeting Type: EXTRAORDINARY GENERAL MEETING
Meeting Number: 2026-2
Date: 2025-08-29
Time: 10:00 - 12:00
Location: Little, Champlin and Ratke Headquarters, Leonorport
Officers
Chairman: Fernando Reichert (Product Paradigm Facilitator)
Secretary: Margarita Blanda (Principal Integration Manager)
Attendees
• Brad Schamberger - Regional Markets Manager
• Gwen Hermiston - Central Marketing Director
• Ronald Barrows - Customer Division Strategist
• Carlos Will - Lead Metrics Executive
• Mrs. Miriam Lesch - Product Applications Engineer
Agenda
1. enable out-of-the-box functionalities
2. scale world-class solutions
3. empower B2B infrastructures
4. engineer strategic synergies
Resolutions
Resolution 1: expedite synergistic synergies
Suadeo peior tamdiu vox benigne. Quae debitis cognatus defetiscor. Attonbitus patruus aliquid aptus.
Votes: For: 3, Against: 1, Abstentions: 1
Result: PASSED
Resolution 2: unleash impactful relationships
Supra abbas abscido conventus abundans vinculum coaegresco concido. Allatus cibo vulnero aggredior corrigo
apto. Teneo brevis super theologus casus.
Votes: For: 4, Against: 0, Abstentions: 1
Result: PASSED
Resolution 3: architect distributed supply-chains
Creptio aiunt desino tres cilicium. Vix capto adflicto pariatur cruentus est. Attollo tepidus conspergo.
Votes: For: 2, Against: 3, Abstentions: 0
Result: NOT PASSED
Resolution 4: empower end-to-end large language models
Ullam beatae suasoria desolo denego tubineus sint attollo eveniet cognomen. Nobis consuasor amitto causa
sequi minima colo. Explicabo timor ultra argumentum eum.
Votes: For: 2, Against: 2, Abstentions: 1
Result: NOT PASSED
Resolution 5: deliver dynamic interfaces

Alter quasi valde mollitia adversus commodo. Damno substantia sit vox. Utique admoneo defessus enim defendo
conforto summa tergo conduco.
Votes: For: 2, Against: 2, Abstentions: 1
Result: NOT PASSED
Certification
We hereby certify that these minutes are an accurate record of the proceedings.
_______________________________
Chairman: Fernando Reichert
Product Paradigm Facilitator
Date: 2025-08-29
_______________________________
Secretary: Margarita Blanda
Principal Integration Manager
Date: 2025-08-29
---

Extract the data as JSON according to the schema.
Raw LLM Response
{
  "meetingType": "extraordinary_general_meeting",
  "date": "2025-08-29",
  "chairman": {
    "name": "Fernando Reichert",
    "title": "Product Paradigm Facilitator"
  },
  "absentees": [],
  "signatures": [
    {
      "role": "Chairman",
      "name": "Fernando Reichert",
      "signedDate": "2025-08-29",
      "title": "Product Paradigm Facilitator"
    },
    {
      "role": "Secretary",
      "name": "Margarita Blanda",
      "signedDate": "2025-08-29",
      "title": "Principal Integration Manager"
    }
  ],
  "agendaItems": [
    "enable out-of-the-box functionalities",
    "scale world-class solutions",
    "empower B2B infrastructures",
    "engineer strategic synergies"
  ],
  "attendees": [
    {
      "name": "Brad Schamberger",
      "title": "Regional Markets Manager"
    },
    {
      "name": "Gwen Hermiston",
      "title": "Central Marketing Director"
    },
    {
      "name": "Ronald Barrows",
      "title": "Customer Division Strategist"
    },
    {
      "name": "Carlos Will",
      "title": "Lead Metrics Executive"
    },
    {
      "name": "Mrs. Miriam Lesch",
      "title": "Product Applications Engineer"
    }
  ],
  "endTime": "12:00",
  "location": "Little, Champlin and Ratke Headquarters, Leonorport",
  "meetingNumber": "2026-2",
  "resolutions": [
    {
      "number": "1",
      "title": "expedite synergistic synergies",
      "passed": true,
      "votesFor": 3,
      "votesAgainst": 1,
      "abstentions": 1,
      "description": "Suadeo peior tamdiu vox benigne. Quae debitis cognatus defetiscor. Attonbitus patruus aliquid aptus."
    },
    {
      "number": "2",
      "title": "unleash impactful relationships",
      "passed": true,
      "votesFor": 4,
      "votesAgainst": 0,
      "abstentions": 1,
      "description": "Supra abbas abscido conventus abundans vinculum coaegresco concido. Allatus cibo vulnero aggredior corrigo\napto. Teneo brevis super theologus casus."
    },
    {
      "number": "3",
      "title": "architect distributed supply-chains",
      "passed": false,
      "votesFor": 2,
      "votesAgainst": 3,
      "abstentions": 0,
      "description": "Creptio aiunt desino tres cilicium. Vix capto adflicto pariatur cruentus est. Attollo tepidus conspergo."
    },
    {
      "number": "4",
      "title": "empower end-to-end large language models",
      "passed": false,
      "votesFor": 2,
      "votesAgainst": 2,
      "abstentions": 1,
      "description": "Ullam beatae suasoria desolo denego tubineus sint attollo eveniet cognomen. Nobis consuasor amitto causa\nsequi minima colo. Explicabo timor ultra argumentum eum."
    },
    {
      "number": "5",
      "title": "deliver dynamic interfaces",
      "passed": false,
      "votesFor": 2,
      "votesAgainst": 2,
      "abstentions": 1,
      "description": "Alter quasi valde mollitia adversus commodo. Damno substantia sit vox. Utique admoneo defessus enim defendo\nconforto summa tergo conduco."
    }
  ],
  "secretary": {
    "name": "Margarita Blanda",
    "title": "Principal Integration Manager"
  },
  "startTime": "10:00"
}
JSON Schema (Structured Output)

This schema is passed to the LLM via ResponseSchema to enforce structured JSON output.

{
  "example": {
    "absentees": [],
    "agendaItems": [
      "1. Approval of Previous Meeting Minutes",
      "2. Financial Report Q1 2024",
      "3. Strategic Planning Discussion"
    ],
    "attendees": [
      {
        "name": "Michael Johnson",
        "title": "Chief Financial Officer"
      },
      {
        "name": "Sarah Williams",
        "title": "Chief Operating Officer"
      }
    ],
    "chairman": {
      "name": "John Smith",
      "title": "Chairman of the Board"
    },
    "date": "2024-03-15",
    "endTime": "12:00",
    "location": "Corporate Headquarters, Conference Room A",
    "meetingNumber": "2024-001",
    "meetingType": "board_meeting",
    "notes": "Meeting adjourned at 12:00 PM. Next meeting scheduled for April 15, 2024.",
    "resolutions": [
      {
        "abstentions": 0,
        "description": "The board approves the proposed Q1 2024 budget of $2.5 million.",
        "number": "1",
        "passed": true,
        "title": "Approval of Q1 Budget",
        "votesAgainst": 0,
        "votesFor": 4
      }
    ],
    "secretary": {
      "name": "Jane Doe",
      "title": "Corporate Secretary"
    },
    "signatures": [
      {
        "name": "John Smith",
        "role": "Chairman",
        "signedDate": "2024-03-15",
        "title": "Chairman of the Board"
      },
      {
        "name": "Jane Doe",
        "role": "Secretary",
        "signedDate": "2024-03-15",
        "title": "Corporate Secretary"
      }
    ],
    "startTime": "10:00"
  },
  "properties": {
    "absentees": {
      "description": "List of people who were absent from the meeting. Use empty array [] if no absentees.",
      "items": {
        "properties": {
          "email": {
            "description": "Email address",
            "type": "STRING"
          },
          "name": {
            "description": "Full name of the person",
            "type": "STRING"
          },
          "title": {
            "description": "Job title or role",
            "type": "STRING"
          }
        },
        "required": [
          "name"
        ],
        "type": "OBJECT"
      },
      "type": "ARRAY"
    },
    "agendaItems": {
      "items": {
        "type": "STRING"
      },
      "type": "ARRAY"
    },
    "attendees": {
      "items": {
        "properties": {
          "email": {
            "description": "Email address",
            "type": "STRING"
          },
          "name": {
            "description": "Full name of the person",
            "type": "STRING"
          },
          "title": {
            "description": "Job title or role",
            "type": "STRING"
          }
        },
        "required": [
          "name"
        ],
        "type": "OBJECT"
      },
      "type": "ARRAY"
    },
    "chairman": {
      "properties": {
        "email": {
          "description": "Email address",
          "type": "STRING"
        },
        "name": {
          "description": "Full name of the person",
          "type": "STRING"
        },
        "title": {
          "description": "Job title or role",
          "type": "STRING"
        }
      },
      "required": [
        "name"
      ],
      "type": "OBJECT"
    },
    "date": {
      "description": "Meeting date in YYYY-MM-DD format",
      "type": "STRING"
    },
    "endTime": {
      "description": "End time in HH:MM format",
      "type": "STRING"
    },
    "location": {
      "description": "Meeting location",
      "type": "STRING"
    },
    "meetingNumber": {
      "description": "Meeting reference number",
      "type": "STRING"
    },
    "meetingType": {
      "description": "Type of meeting",
      "enum": [
        "board_meeting",
        "shareholder_meeting",
        "annual_general_meeting",
        "extraordinary_general_meeting"
      ],
      "type": "STRING"
    },
    "notes": {
      "type": "STRING"
    },
    "resolutions": {
      "items": {
        "properties": {
          "abstentions": {
            "description": "Number of abstentions. Use 0 if none.",
            "type": "INTEGER"
          },
          "description": {
            "type": "STRING"
          },
          "number": {
            "type": "STRING"
          },
          "passed": {
            "type": "BOOLEAN"
          },
          "title": {
            "type": "STRING"
          },
          "votesAgainst": {
            "description": "Number of votes against",
            "type": "INTEGER"
          },
          "votesFor": {
            "description": "Number of votes in favor",
            "type": "INTEGER"
          }
        },
        "required": [
          "number",
          "title",
          "passed",
          "votesFor",
          "votesAgainst",
          "abstentions"
        ],
        "type": "OBJECT"
      },
      "type": "ARRAY"
    },
    "secretary": {
      "properties": {
        "email": {
          "description": "Email address",
          "type": "STRING"
        },
        "name": {
          "description": "Full name of the person",
          "type": "STRING"
        },
        "title": {
          "description": "Job title or role",
          "type": "STRING"
        }
      },
      "required": [
        "name"
      ],
      "type": "OBJECT"
    },
    "signatures": {
      "description": "Signatures certifying the protocol accuracy. Typically signed by chairman and secretary.",
      "items": {
        "properties": {
          "name": {
            "description": "Full name of the person signing",
            "type": "STRING"
          },
          "role": {
            "description": "Role of the signatory (e.g., Chairman, Secretary)",
            "type": "STRING"
          },
          "signedDate": {
            "description": "Date the protocol was signed in YYYY-MM-DD format",
            "type": "STRING"
          },
          "title": {
            "description": "Job title of the signatory",
            "type": "STRING"
          }
        },
        "required": [
          "role",
          "name",
          "signedDate"
        ],
        "type": "OBJECT"
      },
      "type": "ARRAY"
    },
    "startTime": {
      "description": "Start time in HH:MM format",
      "type": "STRING"
    }
  },
  "required": [
    "meetingType",
    "date",
    "chairman",
    "absentees",
    "signatures"
  ],
  "type": "OBJECT"
}