openapi: 3.1.0
info:
  title: LocationGroup
  version: 2.0.0
  description: Schema definition for the LocationGroup entity in the Beckn Mobility
  license:
    name: CC-BY-NC-SA 4.0 International
    url: https://creativecommons.org/licenses/by-nc-sa/4.0/deed.en
  contact:
    name: Beckn Labs
    url: https://beckn.io
components:
  schemas:
    LocationGroup:
      x-iri: https://schema.nfh.global/LocationGroup/v2.0
      type: object
      title: LocationGroup
      description: A set of geographic locations (stops or areas) that can collectively
        serve as an origin or destination for flexible transit services.
      x-tags:
        - mobility
        - geosparql
        - ride-hailing
      properties:
        locationGroupId:
          description: Unique identifier for the location group
          type: string
        locationGroupName:
          description: Human-readable name for the location group
          type: string
        stops:
          description: Stops included in this location group
          $ref: https://schema.nfh.global/Stop/v2.0/attributes.yaml#/components/schemas/Stop
        id:
          description: Unique identifier for the location
          type: string
        descriptor:
          description: Human-readable description of the location
          $ref: https://schema.nfh.global/Descriptor/v2.0/attributes.yaml#/components/schemas/Descriptor
        gps:
          description: GPS coordinates as a latitude,longitude string
          type: string
        address:
          description: Physical address of the location
          $ref: https://schema.nfh.global/Address/v2.0/attributes.yaml#/components/schemas/Address
        city:
          description: City name
          type: string
        country:
          description: ISO 3166-1 alpha-2 country code
          type: string
        geojson:
          description: GeoJSON geometry object representing this location
          $ref: https://schema.nfh.global/GeoJSONGeometry/v2.0/attributes.yaml#/components/schemas/GeoJSONGeometry
      additionalProperties: false
