openapi: 3.1.1
info:
  title: Person
  version: 2.0.0
  description: A person (alive, deceased, or fictional). Modeled after schema.org/Person.
  license:
    name: CC-BY-NC-SA 4.0 International
  contact:
    name: Beckn Labs
    url: https://beckn.io
components:
  schemas:
    Person:
      x-iri: https://schema.nfh.global/Person/v2.0
      description: A person (alive, deceased, or fictional). Modeled after schema.org/Person.
      title: Person
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the person
          x-jsonld:
            '@id': schema:identifier
        name:
          type: string
          description: Full name of the person
          x-jsonld:
            '@id': schema:name
        email:
          type: string
          format: email
          description: Email address
          x-jsonld:
            '@id': schema:email
        telephone:
          type: string
          description: Telephone number
          x-jsonld:
            '@id': schema:telephone
        address:
          description: Physical address
          oneOf:
          - type: string
          - $ref: https://schema.nfh.global/Address/v2.0/attributes.yaml#/components/schemas/Address
          x-jsonld:
            '@id': schema:address
        age:
          type: integer
          description: Age in years
          minimum: 0
          x-jsonld:
            '@id': schema:age
        knowsLanguage:
          type: array
          description: Languages known by the person (BCP-47 codes or language names)
          items:
            type: string
          x-jsonld:
            '@id': schema:knowsLanguage
        worksFor:
          description: Organization the person works for
          x-jsonld:
            '@id': schema:worksFor
          $ref: https://schema.nfh.global/Organization/v2.0/attributes.yaml#/components/schemas/Organization
        credentials:
          type: array
          description: Credentials held by the person
          items:
            $ref: https://schema.nfh.global/Credential/v2.0/attributes.yaml#/components/schemas/Credential
          x-jsonld:
            '@id': schema:hasCredential
        skills:
          type: array
          description: Skills possessed by the person
          items:
            $ref: https://schema.nfh.global/Skill/v2.0/attributes.yaml#/components/schemas/Skill
          x-jsonld:
            '@id': schema:hasSkill
        personAttributes:
          description: Extensible attribute pack for jurisdictional or domain-specific
            person properties
          $ref: https://schema.nfh.global/Attributes/v2.0/attributes.yaml#/components/schemas/Attributes
      required:
      - id
      additionalProperties: false
      x-tags:
      - common
