### Developer Guide - Start Here Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-724.html Getting started guide for the eForms SDK developer guide. ```APIDOC ## Developer Guide - Start Here ### Description An introductory guide to help developers begin using the eForms SDK. ``` -------------------------------- ### eForms SDK - Start Here Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-31.html Getting started guide for the eForms SDK. ```APIDOC ## eForms SDK - Start Here ### Start Here ``` -------------------------------- ### eForms SDK - Developer Guide Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-262.html A guide for developers working with the eForms SDK, covering setup, understanding, and working with the SDK. ```APIDOC ## eForms SDK - Developer Guide (v1.13) ### Description This guide assists developers in understanding and utilizing the eForms SDK. It covers initial setup, core concepts, and practical workflows. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ### Sections * Start Here * Understanding the SDK * SDK glossary * Working with the SDK (Create forms, Generate XML, Visualize notices, Validate notices) * Working without the SDK ``` -------------------------------- ### Install model2owl Source: https://docs.ted.europa.eu/M2O/latest/user-guide/how-to-use.html Run this command after cloning the repository to install the model2owl tool. This may require make. ```bash make install ``` -------------------------------- ### XML Examples Source: https://docs.ted.europa.eu/ESPD-EDM/3.1.0/6.ESPD_Response_Document.html Illustrative XML examples for ESPD-EDM. ```APIDOC ### Example 1: Two different evidences for two criteria The following snippet uses the same two criteria shown in the XML example snippet 1.a): hence the values of the cac:ValidatedCriterionPropertyID are 'd8d5478e-cc65-48c9-a189-19bbe87a9bfd' (criterion property 'participation in a criminal organisation') and '7c7fb445-c5f9-4f92-8b58-7f06a541951f' (criterion property 'contributions certificates'). ``` -------------------------------- ### Example Transformation Command Source: https://docs.ted.europa.eu/M2O/latest/user-guide/how-to-use.html An example of how to execute the 'make owl-core' command with specified input file path and output folder path. ```bash make owl-core XMI_INPUT_FILE_PATH=/home/mypc/work/model2owl/file1.xml OUTPUT_FOLDER_PATH=./my-folder ``` -------------------------------- ### ESPD-EDM XML Examples Source: https://docs.ted.europa.eu/ESPD-EDM/3.3.0/technical/tech_selection_criteria.html Provides links to the ESPD-EDM XML examples for ESPD Request and Response on GitHub. These examples are useful for understanding the data structures and implementation details. ```xml https://github.com/OP-TED/ESPD-EDM/blob/v3.3.0/xml-examples/ESPD-Response.xml#L3791 ``` -------------------------------- ### Complete Economic Operator Party Example Source: https://docs.ted.europa.eu/ESPD-EDM/1.0.2/index_response.html A comprehensive example demonstrating the structure of the EconomicOperatorParty component within the ESPD Service. ```xml false B20779081 Wayne Enterprises 1000 Rue Melsens 3 Brussels BE Bruce Wayne 01 234 56 78 wayne@enterprises.com ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-156.html A guide for developers working with the eForms SDK, covering setup, usage, and best practices. ```APIDOC ## eForms SDK Developer Guide (v1.13) ### Description This guide assists developers in understanding and utilizing the eForms SDK, including working with forms, generating XML, and validating notices. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ### Related Resources - Start Here - Understanding the SDK - SDK glossary - Working with the SDK - Create the forms - Generate XML - Visualise notices - Validate notices - Working without the SDK ``` -------------------------------- ### eForms SDK - Developer Guide Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-19.html Guides for developers working with the eForms SDK, covering understanding the SDK, working with it, and alternatives. ```APIDOC ## eForms SDK - Developer Guide ### Description Guides developers on how to understand and work with the eForms SDK, including creating forms, generating XML, and visualizing notices. ### Endpoint N/A (Documentation) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK - Developer Guide Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-36.html Guides for developers working with the eForms SDK, covering understanding and working with the SDK. ```APIDOC ## eForms SDK - Developer Guide (Version 1.13) ### Description This guide provides instructions for developers on how to understand and work with the eForms SDK, including creating forms, generating XML, and validating notices. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ### Key Topics - Start Here - Understanding the SDK - SDK glossary - Working with the SDK - Create the forms - Generate XML - Visualise notices - Validate notices - Working without the SDK ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/OPT-301.html A guide for developers on how to use the eForms SDK version 1.14, including understanding the SDK, working with it, and sample applications. ```APIDOC ## eForms SDK Developer Guide (1.14) ### Description This guide assists developers in utilizing the eForms SDK version 1.14, covering its core concepts and practical usage. ### Endpoint N/A ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### Complete cac:ContractingParty XML Example Source: https://docs.ted.europa.eu/ESPD-EDM/1.0.2/index_response.html A full example of the cac:ContractingParty structure including party name, address, and contact information. ```xml Executive Agency for Small and Medium-sized Enterprises (EASME) BE ``` -------------------------------- ### eForms SDK - Developer Guide Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-01.html Guides developers on how to understand and work with the eForms SDK, including creating forms, generating XML, and validating notices. ```APIDOC ## eForms SDK - Developer Guide ### Description This guide assists developers in understanding and utilizing the eForms SDK. It covers topics such as creating forms, generating XML, and validating notices. ### Endpoint N/A (Documentation Section) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-120.html Guides developers on understanding and working with the eForms SDK, including creating forms, generating XML, and visualizing notices. ```APIDOC ## Developer Guide ### Description This guide assists developers in understanding and utilizing the eForms SDK effectively. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ## Working with the SDK ### Description Instructions on how to work with the eForms SDK, covering form creation, XML generation, and notice visualization. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ## Working without the SDK ### Description Guidance on how to work with eForms without directly using the SDK. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-509.html A guide for developers on how to work with the eForms SDK version 1.13, including understanding the SDK and working with forms and notices. ```APIDOC ## eForms SDK Developer Guide (v1.13) ### Description This guide assists developers in understanding and utilizing the eForms SDK version 1.13. It covers starting with the SDK, understanding its components, and practical guidance on creating forms, generating XML, visualizing, and validating notices. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ### Topics Covered - Start Here - Understanding the SDK - SDK glossary - Working with the SDK (Create forms, Generate XML, Visualise notices, Validate notices) - Working without the SDK ``` -------------------------------- ### XML Examples and Structure Guidance Source: https://docs.ted.europa.eu/ESPD-EDM/3.2.0/3.Common_aspects_for_criteria.html Guidance on XML implementation and structure, referencing examples and explaining the usage of elements like cbc:Name and cac:Description. ```APIDOC ## XML Examples and Structure Guidance ### XML Examples 1. See examples in sections about exclusion and selection criteria. 2. You will notice in the examples that the element `cbc:Name` is never used. Instead the `cac:Description` is sufficient for all the ESPD purposes. ### Mock-ups Chapters **4 Exclusion Criteria** and **5. Selection Criteria** describe in detail the different **types** of exclusion and selection criteria defined and used in the ESPD-EDM. By **type** of criterion we refer to criteria that share common characteristics, namely how they are structured. Each type of criterion is presented from three perspectives: 1. **Layout and functional**: Mock-ups are provided to explain which data are expected and, to some extent, how software applications should behave (what to show/hide, validate or process depending on variables like 'what the user answers' or 'which is the role of the user'). Mock-ups are provided for both the buyer and economic operator perspectives; 2. **Structural**: A spread-sheet book is provided with this document aimed to explain how each type of criterion is organised (the book contains different sheets (tabs). Each 'tab' shows the structure of one type of criterion (e.g. 'EG-Convictions', 'EG-Contributions', …​, 'SC-Suitability', 'SC_References', etc.; where 'EG' stands for 'Exclusion Grounds', and 'SC' stands for 'Selection Criteria'). * ESPD-Criterion where the structures of the ESPD criteria are defined 3. **XML Implementation**: Each mock-up (or pair of Buyer + EO mock-ups) represent the structure represented in the data structure spread-sheet and in the supplied XML example. Whilst the mock-up and XML example are quite self-explanatory, to understand the value of the data structure spread-sheet needs to be explained; which is the mission of this very next sub-section below. ``` -------------------------------- ### Duration Start and End Date Co-constraint (Part) Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-rules/index.html Co-constraint for Duration Start (BT-536-Part) and End Date (BT-537-Part) ensuring the start is before the end. ```EFX ((BT-536-Part is present) and (BT-537-Part is present) and (BT-536-Part < BT-537-Part)) or not((BT-536-Part is present) and (BT-537-Part is present)) ``` -------------------------------- ### Developer Guide - Understanding the SDK Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-724.html An overview of the eForms SDK architecture and concepts. ```APIDOC ## Developer Guide - Understanding the SDK ### Description Provides a conceptual understanding of the eForms SDK, its components, and how it works. ``` -------------------------------- ### Duration Start and End Date Co-constraint (Lot) Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-rules/index.html Co-constraint for Duration Start (BT-536-Lot) and End Date (BT-537-Lot) ensuring the start is before the end. ```EFX ((BT-536-Lot is present) and (BT-537-Lot is present) and (BT-536-Lot < BT-537-Lot)) or not((BT-536-Lot is present) and (BT-537-Lot is present)) ``` -------------------------------- ### Output Directory Structure for Notice Files Source: https://docs.ted.europa.eu/ODS/latest/mapping/reusing.html Details the specific folder created within the /output directory for each example file, containing all generated artifacts for that sample. ```bash /output/ for each example file a folder is created that contains all the generated artefacts for that sample file ``` -------------------------------- ### Identifier Example Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-1378.html Example of an identifier within the eForms SDK. ```APIDOC ## Identifier Example ### `BT-1378`: Selection Lot Identifier - **Type**: IDENTIFIER ``` -------------------------------- ### XML Implementation of Economic Operator Setup Criterion Source: https://docs.ted.europa.eu/ESPD-EDM/1.0.2/index_response.html This XML snippet demonstrates the implementation of the 'Set up of economic operator' criterion within the ESPD Service. It specifies the ID, type, name, and description of the criterion, along with legislative references and requirements for the economic operator's setup date. ```xml 77f481ce-ffb6-483f-8e2b-c78db5e68292 CRITERION.SELECTION.ECONOMIC_FINANCIAL_STANDING.TURNOVER.SET_UP Set up of economic operator In case the information concerning turnover (general or specific) is not available for the entire period required, please state the date on which the economic operator was set up or started trading: DIRECTIVE 2014/24/EU OF THE EUROPEAN PARLIAMENT AND OF THE COUNCIL of 26 February 2014 on public procurement and repealing Directive 2004/18/EC On public procurement and repealing Directive 2004/18/EC EU_DIRECTIVE 58(3) http://eur-lex.europa.eu/legal-content/EN/TXT/?uri=celex:32014L0024 e9aa7763-c167-4352-8060-1a3d7d3e2662 a18b2c98-8552-45ca-9751-d4c94c05847a Please specify 2014 ``` -------------------------------- ### Field Metadata Example Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-13714.html Example of field metadata for 'Tender Lot Identifier'. ```APIDOC ## Field Metadata: Tender Lot Identifier ### Description Represents the identifier for a tender lot. ### Fields * **BT-13714**: Tender Lot Identifier * **BT-13714-Tender**: Tender Lot Identifier * **BT-13714-Tender-Scheme**: Tender Lot Identifier Scheme name ### Type IDENTIFIER ``` -------------------------------- ### XML Example of Service Provider Party Information Source: https://docs.ted.europa.eu/ESPD-EDM/3.1.0/2.ESPD_Request.html This XML snippet demonstrates how to structure the expected data for a service provider, including their identification, name, address, website, and endpoint ID. ```xml B82387770 Ministerio de Defensa ES http://www.minhafp.gob.es/es-ES/Areas%20Tematicas/Patrimonio%20del%20Estado/Contratacion%20del%20Sector%20Publico/Paginas/ROLECE.aspx http://www.minhafp.gob.es/ESPD/endpoint B36699932 Registro Oficial de Licitadores y Empresas Clasificadas (ROLECE) ESP ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-1373.html Guides developers on how to understand and work with the eForms SDK. ```APIDOC ## eForms SDK Developer Guide ### Description This guide assists developers in understanding and utilizing the eForms SDK for creating, generating, and validating notices. ### Version 1.12 ### Sections - Start Here - Understanding the SDK - SDK glossary - Working with the SDK - Create the forms - Generate XML - Visualise notices - Validate notices - Working without the SDK ``` -------------------------------- ### Field Metadata Example: OPP-080 Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/OPP-080.html Example of field metadata for 'Kilometers Public Transport'. ```APIDOC ## Field Metadata: OPP-080 ### Description This section details the fields related to 'Kilometers Public Transport' (OPP-080). ### Fields - **OPP-080-Tender** (string) - Kilometers Public Transport - **OPP-080-Tender-Unit** (string) - Kilometers Public Transport Unit ### Endpoint N/A (Metadata Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK - Developer Guide Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-773.html A guide for developers working with the eForms SDK, version 1.14. ```APIDOC ## eForms SDK - Developer Guide (1.14) ### Description This guide assists developers in understanding and utilizing the eForms SDK version 1.14, covering topics from initial setup to working with the SDK. ### Endpoint N/A ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### Sample Applications - Notice Viewer (Java) Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-724.html Sample Java application for viewing notices. ```APIDOC ## Sample Applications - Notice Viewer (Java) ### Description A sample Java application demonstrating how to view eForms notices. ``` -------------------------------- ### Sample Applications Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-1373.html Examples of applications built using the eForms SDK. ```APIDOC ## Sample Applications ### Description Provides sample applications to demonstrate the usage of the eForms SDK. ### Applications - Notice Viewer (Java) - Notice Editor (Java) ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-22.html Guides developers on how to work with the eForms SDK version 1.14. ```APIDOC ## eForms SDK Developer Guide ### Version 1.14 ### Description This guide provides instructions for developers on understanding and working with the eForms SDK, including creating forms, generating XML, visualizing notices, and validating notices. It also covers working without the SDK. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-132.html Guide for developers working with the eForms SDK version 1.13. ```APIDOC ## eForms SDK Developer Guide v1.13 ### Description This guide assists developers in understanding and utilizing the eForms SDK version 1.13. ### Key Topics: - Start Here - Understanding the SDK - SDK glossary - Working with the SDK (Create forms, Generate XML, Visualize notices, Validate notices) - Working without the SDK ``` -------------------------------- ### eForms SDK - Developer Guide (Version 1.13) Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-800.html Guidance for developers working with the eForms SDK, covering understanding the SDK, working with it, and alternatives. ```APIDOC ## eForms SDK - Developer Guide (1.13) ### Description Guides developers on how to understand and work with the eForms SDK, including creating forms, generating XML, visualizing notices, and validating notices. Also covers working without the SDK. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK - Working with the SDK Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-31.html Guide on how to work with the eForms SDK, including creating forms, generating XML, visualizing, and validating notices. ```APIDOC ## eForms SDK - Working with the SDK ### Working with the SDK - **Create the forms** - **Generate XML** - **Visualise notices** - **Validate notices** ``` -------------------------------- ### eForms SDK Developer Guide Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-77.html A guide for developers working with the eForms SDK, version 1.12. ```APIDOC ## eForms SDK Developer Guide (v1.12) ### Description Provides a developer guide for the eForms SDK, version 1.12, covering topics like understanding the SDK, working with it, and sample applications. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### eForms SDK - Sample Applications Source: https://docs.ted.europa.eu/eforms/latest/reference/business-terms/BT-787.html Examples of sample applications built using the eForms SDK, including Notice Viewer and Notice Editor. ```APIDOC ## eForms SDK - Sample Applications (v1.14) ### Description This section provides examples of sample applications developed using the eForms SDK. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ### Related Resources - **Notice Viewer (Java)**: Sample application for viewing notices. - **Notice Editor (Java)**: Sample application for editing notices. ``` -------------------------------- ### inChangeNotice Property Example Source: https://docs.ted.europa.eu/eforms/1.13/fields/index.html An example demonstrating the 'inChangeNotice' property, which controls modifications in change notices. ```APIDOC ## inChangeNotice Property ### Description The `inChangeNotice` property specifies whether a field's values can be modified within a change notice compared to the original notice. Constraints can be applied to restrict modifications under specific conditions. ### Method N/A (Configuration structure) ### Endpoint N/A (Configuration structure) ### Parameters #### Request Body - **inChangeNotice** (object) - **value** (object) - **canAdd** (boolean) - Optional - When false, all values in the change notice must also be in the original notice. Relevant only for repeatable fields. Defaults to true. - **canModify** (boolean) - Optional - When false, the value in the change notice must be equal to the value in the original notice. Defaults to true. - **canRemove** (boolean) - Optional - When false, all values in the original notice must also be in the change notice. Relevant only for repeatable fields. Defaults to true. - **severity** (string) - Optional - The severity level for validation ('ERROR' or 'WARN'). ### Request Example ```json "inChangeNotice" : { "value" : { "canAdd" : false, "canModify" : false, "canRemove" : false }, "severity" : "ERROR" } ``` ### Response N/A (Configuration structure) ``` -------------------------------- ### RequirementGroup ID Example Source: https://docs.ted.europa.eu/ESPD-EDM/1.0.2/index_response.html Example of a cbc:ID for a RequirementGroup. This attribute is mandatory and uses UUIDs. ```xml 7c637c0c-7703-4389-ba52-02997a055bd7 ``` -------------------------------- ### Sample Applications Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-23.html Examples of sample applications built using the eForms SDK. ```APIDOC ## Sample Applications ### Description Provides sample applications to demonstrate the usage of the eForms SDK. ### Notice Viewer (Java) ### Notice Editor (Java) ``` -------------------------------- ### Sample Applications Source: https://docs.ted.europa.eu/eforms/1.12/reference/business-terms/BT-137.html Provides sample applications to demonstrate the usage of eForms SDK components, including a Notice Viewer and Notice Editor in Java. ```APIDOC ## Sample Applications ### Description Sample applications are provided to illustrate the use of the eForms SDK. This includes a Notice Viewer and a Notice Editor, both developed in Java. ### Endpoint N/A (Documentation Reference) ### Parameters N/A ### Request Body N/A ### Response N/A ``` -------------------------------- ### Selected Candidate List Start Date Source: https://docs.ted.europa.eu/model2owl-boilerplate/demo_ontology/sds/demo_ontology_shapes.rdf This endpoint allows retrieval of the start date for the selected candidate list. ```APIDOC ## GET /api/selected-candidate-list/start-date ### Description Retrieves the start date associated with the selected candidate list. ### Method GET ### Endpoint /api/selected-candidate-list/start-date ### Parameters None ### Response #### Success Response (200) - **hasStartDate** (Interval) - The start date of the selected candidate list. #### Response Example ```json { "hasStartDate": { "@type": "http://www.w3.org/2006/time#Interval", "http://www.w3.org/2006/time#hasBeginning": { "http://www.w3.org/2006/time#inXSDDate": "2024-02-01" } } } ``` ``` -------------------------------- ### Create and Activate Virtual Environment Source: https://docs.ted.europa.eu/M2O/latest/user-guide/how-to-use.html If a virtual environment is not set up, use these commands to create and activate it for model2owl. This ensures project dependencies are isolated. ```bash make create-virtual-env ``` ```bash source model2owl-venv/bin/activate ``` -------------------------------- ### Define Planned Period with Start and End Dates Source: https://docs.ted.europa.eu/eforms/1.13/schema/procedure-lot-part-information.html Provides explicit start and end dates for the procurement period. ```xml 2019-11-15+01:00 2019-11-19+01:00 ``` -------------------------------- ### Future Notice Example (BT-127) Source: https://docs.ted.europa.eu/eforms/1.13/reference/business-terms/BT-127.html Example of a 'Future Notice' element (BT-127) within the eForms SDK context. ```APIDOC ## BT-127: Future Notice ### Description This documentation snippet illustrates the 'Future Notice' element, identified by BT-127, within the eForms SDK. ### Method N/A ### Endpoint N/A ### Parameters N/A ### Request Body N/A ### Response N/A ### Example Structure: | Type | DATE | |---|---| ### Fields | BT-127-notice | Future Notice | |---|---| ```