← Back

protocol-004-en extraction

100.0%
Model: gemini-2.0-flash
Latency: 7.357s
Tokens: 1521/990
PDF Document
Extracted Data
Comparison
Fields
Raw Text
Prompts
Schema
LLM Extracted Data
{
  "absentees": [
    {
      "name": "Ms. Rosalie Berge",
      "title": "Human Response Producer"
    }
  ],
  "agendaItems": [
    "monetize vertical applications",
    "simplify visionary convergence",
    "drive open-source deliverables",
    "repurpose end-to-end channels",
    "strategize innovative schemas"
  ],
  "attendees": [
    {
      "name": "Leon McCullough",
      "title": "Customer Mobility Facilitator"
    },
    {
      "name": "Georgia Botsford",
      "title": "District Applications Liaison"
    },
    {
      "name": "Kyle Rau",
      "title": "National Response Assistant"
    }
  ],
  "chairman": {
    "name": "Rolando Macejkovic",
    "title": "Direct Creative Developer"
  },
  "date": "2025-05-03",
  "endTime": "10:00",
  "location": "Frami, Stoltenberg and Beer Headquarters, Casperview",
  "meetingNumber": "2026-1",
  "meetingType": "extraordinary_general_meeting",
  "resolutions": [
    {
      "abstentions": 2,
      "description": "Sollers adimpleo audax uredo desipio vulnero tabesco conventus. Eum abeo vel viridis cuppedia voro universe tripudio aperio. Vulnero coaegresco arx.",
      "number": "1",
      "passed": true,
      "title": "maximize proactive users",
      "votesAgainst": 0,
      "votesFor": 1
    },
    {
      "abstentions": 2,
      "description": "Amplitudo tenus tener. Aptus occaecati voluptatibus surgo sto cunctatio voluptate. Labore numquam excepturi vulgivagus vita clibanus casso culpo theca.",
      "number": "2",
      "passed": true,
      "title": "architect holistic blockchains",
      "votesAgainst": 0,
      "votesFor": 1
    },
    {
      "abstentions": 0,
      "description": "Basium tubineus accusator itaque. Caste apostolus vos vinitor cultura. Adsidue pax aperiam universe veritas.",
      "number": "3",
      "passed": true,
      "title": "embrace mission-critical smart contracts",
      "votesAgainst": 0,
      "votesFor": 3
    },
    {
      "abstentions": 0,
      "description": "Demergo speciosus aer thymum conforto testimonium provident tergum. Claro comparo thesaurus terra adficio vesper verumtamen. Suggero tolero arma paens solio arguo.",
      "number": "4",
      "passed": true,
      "title": "target cutting-edge systems",
      "votesAgainst": 1,
      "votesFor": 2
    },
    {
      "abstentions": 0,
      "description": "Triumphus adulescens tenuis ipsa alter sum templum. Bibo demoror animus iusto quibusdam censura vomica sollers ancilla capio. Utrimque tergiversatio sordeo umquam.",
      "number": "5",
      "passed": true,
      "title": "enhance holistic mindshare",
      "votesAgainst": 0,
      "votesFor": 3
    }
  ],
  "secretary": {
    "name": "Jermaine Mayer",
    "title": "Regional Accounts Developer"
  },
  "signatures": [
    {
      "name": "Rolando Macejkovic",
      "role": "Chairman",
      "signedDate": "2025-05-03",
      "title": "Direct Creative Developer"
    },
    {
      "name": "Jermaine Mayer",
      "role": "Secretary",
      "signedDate": "2025-05-03",
      "title": "Regional Accounts Developer"
    }
  ],
  "startTime": "09:00"
}
Side-by-Side Comparison

Extracted

{
  "absentees": [
    {
      "name": "Ms. Rosalie Berge",
      "title": "Human Response Producer"
    }
  ],
  "agendaItems": [
    "monetize vertical applications",
    "simplify visionary convergence",
    "drive open-source deliverables",
    "repurpose end-to-end channels",
    "strategize innovative schemas"
  ],
  "attendees": [
    {
      "name": "Leon McCullough",
      "title": "Customer Mobility Facilitator"
    },
    {
      "name": "Georgia Botsford",
      "title": "District Applications Liaison"
    },
    {
      "name": "Kyle Rau",
      "title": "National Response Assistant"
    }
  ],
  "chairman": {
    "name": "Rolando Macejkovic",
    "title": "Direct Creative Developer"
  },
  "date": "2025-05-03",
  "endTime": "10:00",
  "location": "Frami, Stoltenberg and Beer Headquarters, Casperview",
  "meetingNumber": "2026-1",
  "meetingType": "extraordinary_general_meeting",
  "resolutions": [
    {
      "abstentions": 2,
      "description": "Sollers adimpleo audax uredo desipio vulnero tabesco conventus. Eum abeo vel viridis cuppedia voro universe tripudio aperio. Vulnero coaegresco arx.",
      "number": "1",
      "passed": true,
      "title": "maximize proactive users",
      "votesAgainst": 0,
      "votesFor": 1
    },
    {
      "abstentions": 2,
      "description": "Amplitudo tenus tener. Aptus occaecati voluptatibus surgo sto cunctatio voluptate. Labore numquam excepturi vulgivagus vita clibanus casso culpo theca.",
      "number": "2",
      "passed": true,
      "title": "architect holistic blockchains",
      "votesAgainst": 0,
      "votesFor": 1
    },
    {
      "abstentions": 0,
      "description": "Basium tubineus accusator itaque. Caste apostolus vos vinitor cultura. Adsidue pax aperiam universe veritas.",
      "number": "3",
      "passed": true,
      "title": "embrace mission-critical smart contracts",
      "votesAgainst": 0,
      "votesFor": 3
    },
    {
      "abstentions": 0,
      "description": "Demergo speciosus aer thymum conforto testimonium provident tergum. Claro comparo thesaurus terra adficio vesper verumtamen. Suggero tolero arma paens solio arguo.",
      "number": "4",
      "passed": true,
      "title": "target cutting-edge systems",
      "votesAgainst": 1,
      "votesFor": 2
    },
    {
      "abstentions": 0,
      "description": "Triumphus adulescens tenuis ipsa alter sum templum. Bibo demoror animus iusto quibusdam censura vomica sollers ancilla capio. Utrimque tergiversatio sordeo umquam.",
      "number": "5",
      "passed": true,
      "title": "enhance holistic mindshare",
      "votesAgainst": 0,
      "votesFor": 3
    }
  ],
  "secretary": {
    "name": "Jermaine Mayer",
    "title": "Regional Accounts Developer"
  },
  "signatures": [
    {
      "name": "Rolando Macejkovic",
      "role": "Chairman",
      "signedDate": "2025-05-03",
      "title": "Direct Creative Developer"
    },
    {
      "name": "Jermaine Mayer",
      "role": "Secretary",
      "signedDate": "2025-05-03",
      "title": "Regional Accounts Developer"
    }
  ],
  "startTime": "09:00"
}

Ground Truth

{
  "absentees": [
    {
      "email": "Idell.Lind64@gmail.com",
      "name": "Ms. Rosalie Berge",
      "title": "Human Response Producer"
    }
  ],
  "agendaItems": [
    "1. monetize vertical applications",
    "2. simplify visionary convergence",
    "3. drive open-source deliverables",
    "4. repurpose end-to-end channels",
    "5. strategize innovative schemas"
  ],
  "attendees": [
    {
      "email": "Mauricio_Smith65@yahoo.com",
      "name": "Leon McCullough",
      "title": "Customer Mobility Facilitator"
    },
    {
      "email": "Joanie86@yahoo.com",
      "name": "Georgia Botsford",
      "title": "District Applications Liaison"
    },
    {
      "email": "Lew.Fahey19@gmail.com",
      "name": "Kyle Rau",
      "title": "National Response Assistant"
    }
  ],
  "category": "protocol",
  "chairman": {
    "email": "Lilian_Langworth@hotmail.com",
    "name": "Rolando Macejkovic",
    "title": "Direct Creative Developer"
  },
  "date": "2025-05-03",
  "documentId": "protocol-004-en",
  "endTime": "10:00",
  "location": "Frami, Stoltenberg and Beer Headquarters, Casperview",
  "meetingNumber": "2026-1",
  "meetingType": "extraordinary_general_meeting",
  "resolutions": [
    {
      "abstentions": 2,
      "description": "Sollers adimpleo audax uredo desipio vulnero tabesco conventus. Eum abeo vel viridis cuppedia voro universe tripudio aperio. Vulnero coaegresco arx.",
      "number": 1,
      "passed": true,
      "title": "maximize proactive users",
      "votesAgainst": 0,
      "votesFor": 1
    },
    {
      "abstentions": 2,
      "description": "Amplitudo tenus tener. Aptus occaecati voluptatibus surgo sto cunctatio voluptate. Labore numquam excepturi vulgivagus vita clibanus casso culpo theca.",
      "number": 2,
      "passed": true,
      "title": "architect holistic blockchains",
      "votesAgainst": 0,
      "votesFor": 1
    },
    {
      "abstentions": 0,
      "description": "Basium tubineus accusator itaque. Caste apostolus vos vinitor cultura. Adsidue pax aperiam universe veritas.",
      "number": 3,
      "passed": true,
      "title": "embrace mission-critical smart contracts",
      "votesAgainst": 0,
      "votesFor": 3
    },
    {
      "abstentions": 0,
      "description": "Demergo speciosus aer thymum conforto testimonium provident tergum. Claro comparo thesaurus terra adficio vesper verumtamen. Suggero tolero arma paens solio arguo.",
      "number": 4,
      "passed": true,
      "title": "target cutting-edge systems",
      "votesAgainst": 1,
      "votesFor": 2
    },
    {
      "abstentions": 0,
      "description": "Triumphus adulescens tenuis ipsa alter sum templum. Bibo demoror animus iusto quibusdam censura vomica sollers ancilla capio. Utrimque tergiversatio sordeo umquam.",
      "number": 5,
      "passed": true,
      "title": "enhance holistic mindshare",
      "votesAgainst": 0,
      "votesFor": 3
    }
  ],
  "secretary": {
    "email": "Elsie74@yahoo.com",
    "name": "Jermaine Mayer",
    "title": "Regional Accounts Developer"
  },
  "signatures": [
    {
      "name": "Rolando Macejkovic",
      "role": "Chairman",
      "signedDate": "2025-05-03",
      "title": "Direct Creative Developer"
    },
    {
      "name": "Jermaine Mayer",
      "role": "Secretary",
      "signedDate": "2025-05-03",
      "title": "Regional Accounts Developer"
    }
  ],
  "startTime": "09:00",
  "templateVariant": "default"
}
Field Analysis
Matched
71
Mismatched
0
Missing
0
Accuracy
100.0%

Matched 71

  • ✓ resolutions[0].passed
  • ✓ resolutions[0].votesAgainst
  • ✓ resolutions[2].abstentions
  • ✓ resolutions[4].abstentions
  • ✓ agendaItems[3]
  • ✓ absentees[0].title
  • ✓ attendees[0].name
  • ✓ endTime
  • ✓ signatures[1].role
  • ✓ resolutions[2].votesAgainst
  • ✓ resolutions[2].passed
  • ✓ resolutions[4].number
  • ✓ agendaItems[0]
  • ✓ resolutions[1].abstentions
  • ✓ resolutions._length
  • ✓ signatures[0].signedDate
  • ✓ signatures[1].name
  • ✓ signatures[1].signedDate
  • ✓ resolutions[0].abstentions
  • ✓ resolutions[1].passed
  • ✓ resolutions[4].passed
  • ✓ startTime
  • ✓ location
  • ✓ agendaItems._length
  • ✓ signatures[1].title
  • ✓ meetingNumber
  • ✓ resolutions[2].title
  • ✓ meetingType
  • ✓ resolutions[1].number
  • ✓ resolutions[4].title
  • ✓ signatures._length
  • ✓ resolutions[4].description
  • ✓ resolutions[0].title
  • ✓ resolutions[1].title
  • ✓ agendaItems[4]
  • ✓ signatures[0].name
  • ✓ absentees._length
  • ✓ chairman.title
  • ✓ attendees[2].title
  • ✓ resolutions[0].number
  • ✓ resolutions[3].number
  • ✓ resolutions[1].votesFor
  • ✓ resolutions[0].description
  • ✓ resolutions[1].votesAgainst
  • ✓ signatures[0].role
  • ✓ attendees[2].name
  • ✓ resolutions[1].description
  • ✓ resolutions[2].description
  • ✓ resolutions[3].votesFor
  • ✓ resolutions[3].abstentions
  • ✓ resolutions[4].votesFor
  • ✓ signatures[0].title
  • ✓ resolutions[3].description
  • ✓ attendees._length
  • ✓ resolutions[3].title
  • ✓ agendaItems[2]
  • ✓ date
  • ✓ chairman.name
  • ✓ secretary.name
  • ✓ attendees[0].title
  • ✓ attendees[1].name
  • ✓ attendees[1].title
  • ✓ resolutions[0].votesFor
  • ✓ resolutions[2].votesFor
  • ✓ agendaItems[1]
  • ✓ resolutions[4].votesAgainst
  • ✓ secretary.title
  • ✓ resolutions[2].number
  • ✓ resolutions[3].votesAgainst
  • ✓ resolutions[3].passed
  • ✓ absentees[0].name
Extracted Text from PDF
MEETING PROTOCOL
Meeting Type: EXTRAORDINARY GENERAL MEETING
Meeting Number: 2026-1
Date: 2025-05-03
Time: 09:00 - 10:00
Location: Frami, Stoltenberg and Beer Headquarters, Casperview
Officers
Chairman: Rolando Macejkovic (Direct Creative Developer)
Secretary: Jermaine Mayer (Regional Accounts Developer)
Attendees
• Leon McCullough - Customer Mobility Facilitator
• Georgia Botsford - District Applications Liaison
• Kyle Rau - National Response Assistant
Absent
• Ms. Rosalie Berge - Human Response Producer
Agenda
1. monetize vertical applications
2. simplify visionary convergence
3. drive open-source deliverables
4. repurpose end-to-end channels
5. strategize innovative schemas
Resolutions
Resolution 1: maximize proactive users
Sollers adimpleo audax uredo desipio vulnero tabesco conventus. Eum abeo vel viridis cuppedia voro universe
tripudio aperio. Vulnero coaegresco arx.
Votes: For: 1, Against: 0, Abstentions: 2
Result: PASSED
Resolution 2: architect holistic blockchains
Amplitudo tenus tener. Aptus occaecati voluptatibus surgo sto cunctatio voluptate. Labore numquam excepturi
vulgivagus vita clibanus casso culpo theca.
Votes: For: 1, Against: 0, Abstentions: 2
Result: PASSED
Resolution 3: embrace mission-critical smart contracts
Basium tubineus accusator itaque. Caste apostolus vos vinitor cultura. Adsidue pax aperiam universe veritas.
Votes: For: 3, Against: 0, Abstentions: 0
Result: PASSED
Resolution 4: target cutting-edge systems
Demergo speciosus aer thymum conforto testimonium provident tergum. Claro comparo thesaurus terra adficio
vesper verumtamen. Suggero tolero arma paens solio arguo.

Votes: For: 2, Against: 1, Abstentions: 0
Result: PASSED
Resolution 5: enhance holistic mindshare
Triumphus adulescens tenuis ipsa alter sum templum. Bibo demoror animus iusto quibusdam censura vomica
sollers ancilla capio. Utrimque tergiversatio sordeo umquam.
Votes: For: 3, Against: 0, Abstentions: 0
Result: PASSED
Certification
We hereby certify that these minutes are an accurate record of the proceedings.
_______________________________
Chairman: Rolando Macejkovic
Direct Creative Developer
Date: 2025-05-03
_______________________________
Secretary: Jermaine Mayer
Regional Accounts Developer
Date: 2025-05-03
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-1
Date: 2025-05-03
Time: 09:00 - 10:00
Location: Frami, Stoltenberg and Beer Headquarters, Casperview
Officers
Chairman: Rolando Macejkovic (Direct Creative Developer)
Secretary: Jermaine Mayer (Regional Accounts Developer)
Attendees
• Leon McCullough - Customer Mobility Facilitator
• Georgia Botsford - District Applications Liaison
• Kyle Rau - National Response Assistant
Absent
• Ms. Rosalie Berge - Human Response Producer
Agenda
1. monetize vertical applications
2. simplify visionary convergence
3. drive open-source deliverables
4. repurpose end-to-end channels
5. strategize innovative schemas
Resolutions
Resolution 1: maximize proactive users
Sollers adimpleo audax uredo desipio vulnero tabesco conventus. Eum abeo vel viridis cuppedia voro universe
tripudio aperio. Vulnero coaegresco arx.
Votes: For: 1, Against: 0, Abstentions: 2
Result: PASSED
Resolution 2: architect holistic blockchains
Amplitudo tenus tener. Aptus occaecati voluptatibus surgo sto cunctatio voluptate. Labore numquam excepturi
vulgivagus vita clibanus casso culpo theca.
Votes: For: 1, Against: 0, Abstentions: 2
Result: PASSED
Resolution 3: embrace mission-critical smart contracts
Basium tubineus accusator itaque. Caste apostolus vos vinitor cultura. Adsidue pax aperiam universe veritas.
Votes: For: 3, Against: 0, Abstentions: 0
Result: PASSED
Resolution 4: target cutting-edge systems
Demergo speciosus aer thymum conforto testimonium provident tergum. Claro comparo thesaurus terra adficio
vesper verumtamen. Suggero tolero arma paens solio arguo.

Votes: For: 2, Against: 1, Abstentions: 0
Result: PASSED
Resolution 5: enhance holistic mindshare
Triumphus adulescens tenuis ipsa alter sum templum. Bibo demoror animus iusto quibusdam censura vomica
sollers ancilla capio. Utrimque tergiversatio sordeo umquam.
Votes: For: 3, Against: 0, Abstentions: 0
Result: PASSED
Certification
We hereby certify that these minutes are an accurate record of the proceedings.
_______________________________
Chairman: Rolando Macejkovic
Direct Creative Developer
Date: 2025-05-03
_______________________________
Secretary: Jermaine Mayer
Regional Accounts Developer
Date: 2025-05-03
---

Extract the data as JSON according to the schema.
Raw LLM Response
{
  "meetingType": "extraordinary_general_meeting",
  "date": "2025-05-03",
  "chairman": {
    "name": "Rolando Macejkovic",
    "title": "Direct Creative Developer"
  },
  "absentees": [
    {
      "name": "Ms. Rosalie Berge",
      "title": "Human Response Producer"
    }
  ],
  "signatures": [
    {
      "role": "Chairman",
      "name": "Rolando Macejkovic",
      "signedDate": "2025-05-03",
      "title": "Direct Creative Developer"
    },
    {
      "role": "Secretary",
      "name": "Jermaine Mayer",
      "signedDate": "2025-05-03",
      "title": "Regional Accounts Developer"
    }
  ],
  "agendaItems": [
    "monetize vertical applications",
    "simplify visionary convergence",
    "drive open-source deliverables",
    "repurpose end-to-end channels",
    "strategize innovative schemas"
  ],
  "attendees": [
    {
      "name": "Leon McCullough",
      "title": "Customer Mobility Facilitator"
    },
    {
      "name": "Georgia Botsford",
      "title": "District Applications Liaison"
    },
    {
      "name": "Kyle Rau",
      "title": "National Response Assistant"
    }
  ],
  "endTime": "10:00",
  "location": "Frami, Stoltenberg and Beer Headquarters, Casperview",
  "meetingNumber": "2026-1",
  "resolutions": [
    {
      "number": "1",
      "title": "maximize proactive users",
      "passed": true,
      "votesFor": 1,
      "votesAgainst": 0,
      "abstentions": 2,
      "description": "Sollers adimpleo audax uredo desipio vulnero tabesco conventus. Eum abeo vel viridis cuppedia voro universe tripudio aperio. Vulnero coaegresco arx."
    },
    {
      "number": "2",
      "title": "architect holistic blockchains",
      "passed": true,
      "votesFor": 1,
      "votesAgainst": 0,
      "abstentions": 2,
      "description": "Amplitudo tenus tener. Aptus occaecati voluptatibus surgo sto cunctatio voluptate. Labore numquam excepturi vulgivagus vita clibanus casso culpo theca."
    },
    {
      "number": "3",
      "title": "embrace mission-critical smart contracts",
      "passed": true,
      "votesFor": 3,
      "votesAgainst": 0,
      "abstentions": 0,
      "description": "Basium tubineus accusator itaque. Caste apostolus vos vinitor cultura. Adsidue pax aperiam universe veritas."
    },
    {
      "number": "4",
      "title": "target cutting-edge systems",
      "passed": true,
      "votesFor": 2,
      "votesAgainst": 1,
      "abstentions": 0,
      "description": "Demergo speciosus aer thymum conforto testimonium provident tergum. Claro comparo thesaurus terra adficio vesper verumtamen. Suggero tolero arma paens solio arguo."
    },
    {
      "number": "5",
      "title": "enhance holistic mindshare",
      "passed": true,
      "votesFor": 3,
      "votesAgainst": 0,
      "abstentions": 0,
      "description": "Triumphus adulescens tenuis ipsa alter sum templum. Bibo demoror animus iusto quibusdam censura vomica sollers ancilla capio. Utrimque tergiversatio sordeo umquam."
    }
  ],
  "secretary": {
    "name": "Jermaine Mayer",
    "title": "Regional Accounts Developer"
  },
  "startTime": "09: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"
}