.. _entities-dictionary:

########
Glossary
########

This section defines the main concepts and terms used throughout the
LEXIS Platform documentation.


.. _List of Abbreviations:

List of Abbreviations
---------------------

.. list-table::
   :header-rows: 1
   :widths: 20 80

   * - Abbreviation
     - Meaning
   * - **AAI**
     - Authentication and Authorisation Infrastructure.
   * - **API**
     - Application Programming Interface.
   * - **DAG**
     - Directed Acyclic Graph.
   * - **DDI**
     - Distributed Data Infrastructure.
   * - **FAIR**
     - Findable, Accessible, Interoperable, and Reusable principles.
   * - **GPU**
     - Graphics Processing Unit.
   * - **HEAppE**
     - High-End Application Execution Middleware.
   * - **HPC**
     - High-Performance Computing.
   * - **iRODS**
     - Integrated Rule-Oriented Data System.
   * - **LWD**
     - LEXIS Platform Workflow Definition.
   * - **OIDC**
     - OpenID Connect.
   * - **PI**
     - Principal Investigator.
   * - **RBAC**
     - Role-Based Access Control.


Main Platform Concepts
----------------------

.. list-table::
   :header-rows: 1
   :widths: 30 70

   * - Term
     - Description

   * - **Apache Airflow**
     - Workflow orchestration engine used to schedule and monitor LEXIS
       Platform tasks.

   * - **Application**
     - Definition of a computational workload that can be executed by a
       workflow task.

   * - **DDI**
     - LEXIS Platform subsystem responsible for datasets, metadata, storage,
       data transfer, and staging.

   * - **Expirio**
     - Service for secure storage and lifecycle management of tokens and other
       credentials required by workflows.

   * - **HEAppE**
     - Middleware used to submit and monitor jobs on integrated HPC systems
       and map execution requests to provider-side identities and accounting
       contexts.

   * - .. _dict-hpc-command-application:

       **HPC Command Application**
     - HPC application represented by a predefined HEAppE command template.

   * - .. _dict-hpc-container-application:

       **HPC Container Application**
     - Containerised application executed on an HPC system, typically using
       an Apptainer image.

   * - **iRODS Zone**
     - Provider-operated iRODS environment used for managed storage of dataset
       files and associated metadata.

   * - **Keycloak**
     - OIDC provider used for authentication and federation with external
       identity providers.

   * - .. _LEXIS Dataset Listing:

       **LEXIS Platform Dataset Listing**
     - List of private, project, and public datasets accessible to a user
       through the LEXIS Platform data services.

   * - .. _LEXIS Platform Dataset:

       **LEXIS Platform Dataset**
     - Logical collection of zero or more files, directories, and associated
       metadata managed through DDI.

   * - .. _LEXIS Project:

       **LEXIS Platform Project**
     - Main collaboration and authorisation context grouping users, datasets,
       workflows, applications, and access to assigned Resources.

   * - .. _LEXIS Task:

       **LEXIS Platform Task**
     - Individual computational or data-management operation within a
       LEXIS Platform Workflow.

   * - .. _LEXIS Task Execution:

       **LEXIS Platform Task Execution**
     - Concrete execution of a task within a LEXIS Platform Workflow
       Execution.

   * - .. _LEXIS Workflow:

       **LEXIS Platform Workflow**
     - Directed graph of computational and data-management tasks, their
       configuration, dependencies, and data flow.

   * - .. _LEXIS Workflow Catalogue:

       **LEXIS Platform Workflow Catalogue**
     - Repository of workflow templates available to users for creating and
       executing workflows.
    
   * - **LEXIS Platform Workflow Definition (LWD)**
     - YAML-based declarative format used to describe a LEXIS Platform
       Workflow.

   * - .. _LEXIS Workflow Execution:

       **LEXIS Platform Workflow Execution**
     - Concrete run of a workflow with specific inputs, parameters, Resources,
       task executions, and outputs.

   * - .. _LEXIS Workflow Template:

       **LEXIS Platform Workflow Template**
     - Reusable description of workflow tasks, their dependencies, inputs,
       outputs, and execution sequence.

   * - **Location**
     - Physical or logical infrastructure endpoint where an allocation can be
       consumed, such as an HPC system, Kubernetes environment, or storage
       infrastructure.

   * - **OpenSearch**
     - Central metadata index used by DDI for dataset discovery and search.

   * - .. _Principal Investigator:

       **Principal Investigator**
     - Person responsible for a provider-side HPC allocation and its
       appropriate use.

   * - **Project Membership**
     - Association of a User with a LEXIS Platform Project, including the project role
       used for authorisation.

   * - **Provider**
     - Organisation operating infrastructure connected to the LEXIS Platform,
       such as an HPC centre, Kubernetes site, or storage provider.

   * - .. _HPC Computational Project:

       .. _LEXIS Computation Resource:

       **Resource**
     - Abstract compute or storage allocation provided to a project, for
       example CPU node-hours, GPU-hours, or a storage quota.

   * - **Resource Assignment**
     - Association between a Resource and a Location defining the concrete HPC
       system, Cloud infrastructure, or storage system on which the allocation
       can be consumed.

   * - **Role**
     - Set of permissions defining which operations a User may perform within
       a LEXIS Platform Project.

   * - **Staging Worker**
     - Provider-side component that performs data transfers between managed
       storage and computational filesystems.

   * - **User**
     - Authenticated person interacting with LEXIS Platform services.

   * - **UserOrg**
     - Backend service maintaining users, projects, memberships, roles,
       Providers, Resources, Resource Assignments, Locations, and the RBAC
       information used for authorisation.
