part i – identification sheet - joinup.eu · 0.7 23/04/2008 completion of installation guide. ......

98
Electronic Public Procurement Application Framework (1 st release) ELLECTRA-WeB / Deliverable D10.1 ELLECTRA-WeB / 045153 12/05/2008 Copyright © ELLECTRA-WeB 2008 Page 1 of 98 PART I – IDENTIFICATION SHEET Project ref. no. 045153 Project acronym ELLECTRA-WeB Project full title E uropean El ectronic Publ ic Procure ment Applic at ion Fra mework in the We stern B alkan Region Security (distribution level) Public Contractual date of delivery 31/03/2008 Actual date of delivery 05/05/2008 Deliverable number D10.1 Deliverable name Electronic Public Procurement Application Framework (1 st release) Type Prototype Status & version version 0.9 Number of pages 98 WP contributing to the Deliverable 3 WP / Task responsible 3 / T3.3 Editor Christos Georgousopoulos Author(s) Christos Georgousopoulos, Brian Elvesæter, Gøran K. Olsen EC Project Officer Aniyan Varghese Keywords Application Framework, Specifications, Software Engineering, MDE, MDD, SOA Abstract (for dissemination) This documentation contains the overall description of the electronic Public Procurement Application Framework (ePP AF) prototype.

Upload: lamnhi

Post on 30-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 1 of 98

PART I – IDENTIFICATION SHEET

Project ref. no. 045153

Project acronym ELLECTRA-WeB

Project full title European Electronic Public Procurement Application Framework in the Western Balkan Region

Security (distribution level) Public

Contractual date of delivery 31/03/2008

Actual date of delivery 05/05/2008

Deliverable number D10.1

Deliverable name Electronic Public Procurement Application Framework (1st

release)

Type Prototype

Status & version version 0.9

Number of pages 98

WP contributing to the Deliverable 3

WP / Task responsible 3 / T3.3

Editor Christos Georgousopoulos

Author(s) Christos Georgousopoulos, Brian Elvesæter, Gøran K. Olsen

EC Project Officer Aniyan Varghese

Keywords Application Framework, Specifications, Software Engineering, MDE, MDD, SOA

Abstract (for dissemination) This documentation contains the overall description of the electronic Public Procurement Application Framework (ePP AF) prototype.

Page 2: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 2 of 98

VERSIONING AND CONTRIBUTION HISTORY

Version Date Description Contributors

0.1 18/03/08 Initial structure and content. Christos Georgousopoulos (INTRASOFT)

0.2 25/03/08 Added content in chapter 2 describing ePP AF specs updates in relation to D3 & hierarchical structure of ePP AF.

Christos Georgousopoulos (INTRASOFT)

0.3 02/04/2008 Description of the development methodology followed via the ePP AF.

Christos Georgousopoulos (INTRASOFT)

0.4 02/04/2008 Rewritten executive summary and introduction chapter to better align with other deliverables. Minor formatting. Aligned list of acronyms with other WP3 deliverables.

Moved and aligned sections between deliverable D10.1 and D11 in order to avoid overlap.

Brian Elvesæter (SINTEF)

Gøran K. Olsen (SINTEF)

0.5 07/04/2008 Re-structuring, extended/amended content of Chapter 2 to reflect the overall specs of the ePP AF. Added ePP form constraints in Appendix. General minor modifications. Corrected deliverable references with respect to EndNote utility.

Christos Georgousopoulos (INTRASOFT)

0.6 08/04/2008 Minor formatting issues. Added installation guidelines for the testing environment.

Brian Elvesæter (SINTEF)

0.7 23/04/2008 Completion of installation guide. Added conclusion and formatted appendices

Christos Georgousopoulos (INTRASOFT)

Brian Elvesæter (SINTEF)

0.8 30/04/2008 Internal peer review. Drazen Brdjanin (EXIT-IT)

0.9 05/05/2008 Addressed feedback from internal peer review and final formatting.

Christos Georgousopoulos (INTRASOFT)

Page 3: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 3 of 98

TABLE OF CONTENTS

PART I – IDENTIFICATION SHEET .............................................................................................................1

VERSIONING AND CONTRIBUTION HISTORY ............................................................................................2

TABLE OF CONTENTS...............................................................................................................................3

LIST OF ACRONYMS .................................................................................................................................5

LIST OF FIGURES......................................................................................................................................8

LIST OF TABLES .......................................................................................................................................9

PART II – EXECUTIVE SUMMARY............................................................................................................10

PART III – FULL DESCRIPTION ...............................................................................................................11

1. INTRODUCTION ............................................................................................................................12

1.1 PURPOSE AND OBJECTIVES ....................................................................................................12

1.2 TARGET AUDIENCE AND RELATIONSHIP TO OTHER DELIVERABLES.......................................12

1.3 STRUCTURE OF THE REPORT ..................................................................................................13

2. OVERVIEW OF THE EPP APPLICATION FRAMEWORK ................................................................14

2.1 EPP APPLICATION FRAMEWORK SPECIFICATIONS .................................................................14

2.2 FRAMEWORK COMPONENTS ...................................................................................................15 2.2.1 Eclipse platform ................................................................................................................15 2.2.2 Development Environment................................................................................................16 2.2.3 Generation Engine ............................................................................................................17 2.2.4 Optional components ........................................................................................................18 2.2.5 ePP Application Framework Integration Plug-in ...............................................................18

2.3 FRAMEWORK ENVIRONMENT...................................................................................................18

2.4 SERVER AND TESTING ENVIRONMENT ....................................................................................20

2.5 JAVA EE TECHNOLOGIES.........................................................................................................21 2.5.1 Annotation-based Development........................................................................................21

3. INSTALLATION GUIDELINES ........................................................................................................23

3.1 INSTALLATION OF THE EPP APPLICATION FRAMEWORK ........................................................23 3.1.1 JEE platform .....................................................................................................................23 3.1.2 ePP Application Framework..............................................................................................29 3.1.3 Updating the environmental variables...............................................................................34

3.2 INSTALLATION OF THE DEPLOYMENT AND TESTING ENVIRONMENT OF THE EPP APPLICATION FRAMEWORK ......................................................................................................................................35 3.2.1 EJBCA Certificate Authority ..............................................................................................36 3.2.2 Updating the environmental variables...............................................................................36 3.2.3 Checking the correctness of Sun Java System Application Server ..................................36

4. CONCLUSION ...............................................................................................................................38

PART IV – APPENDICES .........................................................................................................................39

5. APPENDIX A: ACCOMPANYING CD-ROM ..................................................................................40

6. APPENDIX B: SPECIFICATIONS OF EPP FORM CONSTRAINTS .................................................41

6.1 PRIOR INFORMATION NOTICE..................................................................................................41 6.1.1 Preliminary Questions .......................................................................................................42 6.1.2 SECTION I: Contracting Authority.....................................................................................42 6.1.3 SECTION II.A: Object of the Contract...............................................................................44 6.1.4 SECTION II.B: Object of the Contract (Supplies or Services) ..........................................47 6.1.5 SECTION III: Legal, Economic, Financial and Technical Information ..............................49 6.1.6 SECTION VI: Complementary information .......................................................................49 6.1.7 ANNEX A ..........................................................................................................................50

Page 4: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 4 of 98

6.1.8 ANNEX B: Information about Lots ....................................................................................51 6.1.9 Complementary SIMAP constraints ..................................................................................53

6.2 CONTRACT NOTICE..................................................................................................................55 6.2.1 Preliminary Questions .......................................................................................................55 6.2.2 SECTION I: Contracting Authority.....................................................................................56 6.2.3 SECTION II: Object of the Contract ..................................................................................58 6.2.4 SECTION III: Legal, Economic, Financial and Technical Information ..............................64 6.2.5 SECTION IV: Procedure ...................................................................................................65 6.2.6 SECTION VI: Complementary information .......................................................................69 6.2.7 ANNEX A ..........................................................................................................................71 6.2.8 ANNEX B: Information about Lots ....................................................................................75 6.2.9 Complementary SIMAP constraints ..................................................................................78

6.3 CONTRACT AWARD NOTICE ....................................................................................................80 6.3.1 Preliminary Questions .......................................................................................................80 6.3.2 SECTION I: Contracting Authority.....................................................................................82 6.3.3 SECTION II: Object of the Contract ..................................................................................84 6.3.4 SECTION IV: Procedure ...................................................................................................87 6.3.5 SECTION V: Award of Contract........................................................................................90 6.3.6 SECTION VI: Complementary information .......................................................................93 6.3.7 Complementary SIMAP constraints ..................................................................................94

PART V – REFERENCES .........................................................................................................................96

BIBLIOGRAPHY.......................................................................................................................................97

Page 5: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 5 of 98

LIST OF ACRONYMS

Term Description

AF Application Framework

API Application Programming Interface

APT Advanced Packaging Tool

BPEL Business Process Execution Language

CA Contracting Authority

CD Compact Disk

CPV Common Procurement Vocabulary

CSS Cascading Style Sheets

CVS Control Versioning System

DBMS DataBase Management System

DoW Description of Work

DPS Dynamic Purchasing Systems

EAR Enterprise ARchive

EC European Commission

EIS Enterprise Information System

EJB Enterprise JavaBeans

EMF Eclipse Modeling Framework

EO Economic Operator

ePP electronic Public Procurement

EU European Union

FA Framework Agreement

GEF Graphical Editing Framework

GUI Graphical User Interface

HTML Hyper Text Markup Language

HTTP Hyper Text Transfer Protocol

ICT Information and Communication Technology

IDA Interchange of Data between Administrations

IDABC Interoperable Delivery of European eGovernment Services to Public Administrations, Business and Citizens

IDE Integrated Development Environment

IT Information Technology

JAR Java ARchive

JAXB Java Architecture for XML Binding

JAX-WS Java API for XML Web Services

JBI Java Business Integration

Page 6: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 6 of 98

JDK Java Development Kit

JDO Java Data Objects

JDT Java Development Tools

JEE Java Enterprise Edition

JPA Java Persistence API

JRE Java Runtime Environment

JSE Java Standard Edition

JSF JavaServer Faces

JSP JavaServer Pages

MDA Model Driven Architecture

MDD Model-Driven Development

MDE Model-Driven Engineering

MEAT Most Economically Advantageous Tender

MOF Meta-Object Facility

OCL Object Constraint Language

OJEU Official Journal of the European Union

OMG Object Management Group

ORM Object Relational Mapping

OSS Open Source Software

PC Personal Computer

PIM Platform-Independent Model

PIN Prior Information Notice

POJO Plain Old Java Object

PPL Public Procurement Law

QL Query Language

QVT Queries/Views/Transformations

SDK Software Development Kit

SDO Service Data Objects

SE Software Engineering

SHTTP Secure HyperText Transfer Protocol

SLSB StateLess Session Bean

SME Small Medium Enterprise

SOA Service-Oriented Architecture

SPEM Software Process Engineering Metamodel

SQL Structured Query Language

UML Unified Modeling Language

URI Unified Resource Identifier

URL Unified Resource Locator

Page 7: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 7 of 98

WADL Web Application Description Language

WAR Web Archive

WP Work Package

WSDL Web Services Description Language

WTP Web Tools Platform

XMI XML Metadata Interchange

XML Extensible Markup Language

XSD XML Schema Definition (Language)

XSL eXtensible Stylesheet Language

Page 8: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 8 of 98

LIST OF FIGURES

Figure 1: Users of the ePP AF and their roles ........................................................................................12

Figure 2: Installation of the ePP AF ........................................................................................................13

Figure 3: ePP Application Framework Architecture................................................................................14

Figure 4: The ePP Application Framework environment ........................................................................19

Figure 5: Hierarchical directory structure of the ePP specific components ............................................19

Figure 6: Installation of JEE – screenshot No.1......................................................................................24

Figure 7: Installation of JEE – screenshot No.2......................................................................................24

Figure 8: Installation of JEE – screenshot No.3......................................................................................25

Figure 9: Installation of JEE – screenshot No.4......................................................................................25

Figure 10: Installation of JEE – screenshot No.5....................................................................................26

Figure 11: Installation of JEE – screenshot No.6....................................................................................26

Figure 12: Installation of JEE – screenshot No.7....................................................................................27

Figure 13: Installation of JEE – screenshot No.8....................................................................................27

Figure 14: Installation of JEE – screenshot No.9....................................................................................28

Figure 15: Installation of JEE – screenshot No.10..................................................................................28

Figure 16: Installation of JEE – screenshot No.11..................................................................................29

Figure 17: Installation of JEE – screenshot No.12..................................................................................29

Figure 18: SVN repository checkout from the ePP Application Framework ...........................................30

Figure 19: Checking-out the framework components from SVN............................................................31

Figure 20: Setting the MOFScript source directory – screenshot No.1 ..................................................31

Figure 21: Setting the MOFScript source directory – screenshot No.2 ..................................................32

Figure 22: Setting up new user libraries .................................................................................................32

Figure 23: Creating a new user library....................................................................................................33

Figure 24: Add JARs to the user library..................................................................................................33

Figure 25: JAR selection.........................................................................................................................33

Figure 26: JARs added to the user libraries ...........................................................................................34

Figure 27: Completion of user libraries...................................................................................................34

Figure 28: MS-Windows environmental variables ..................................................................................35

Figure 29: Login page of the Sun Java System Application Server’s Admin Console............................37

Page 9: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 9 of 98

LIST OF TABLES

Table 1: ePP Application Framework plug-ins information.....................................................................15

Table 2: MS-Windows environmental variables for the ePP AF.............................................................35

Table 3: MS-Windows environmental variables for the server-side of the ePP AF................................36

Page 10: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 10 of 98

PART II – EXECUTIVE SUMMARY

The overall aim of the ELLECTRA-WeB project is to specify, develop and test an open-source electronic Public Procurement (ePP) Application Framework and a set of Supporting Guidelines that will enable, on the one hand, Western Balkan ICT solution developers to cost-effectively develop, and, on the other hand, Western Balkan Public Organisations and Suppliers to easily deploy and use trusted, interoperable, user-friendly, secure and EC compliant electronic Public Procurement solutions.

The ePP Application Framework (AF) supports the latest evolutionary approach of Software Engineering, called Model-Driven Engineering (MDE). In contrast with traditional Software Engineering approaches, MDE shifts the focus of software development from writing code to modelling. An ePP solution produced via the utilisation of the ePP AF comes in the form of a Web-based application that adheres to Service-Oriented Architecture (SOA).

The target of this deliverable is the tool packaging and installation procedures for the ePP AF. The ePP AF comes packaged as an Eclipse bundle that can be installed on a PC belonging to the ePP Application Developers.

The development of the ePP AF has followed an iterative and incremental approach. This document forms the first release of the deliverable D10, namely D10.1 that reports on the Eclipse bundle and how to install it. For this release of the ePP AF we have selected and packaged a set of Eclipse components and developed ePP AF components that are tested and work together. For the next version D10.2 some of these components may be updated and/or replaced with newer and tested versions.

Page 11: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 11 of 98

PART III – FULL DESCRIPTION

This part includes Chapters 1–4.

• Chapter 1. Introduction

• Chapter 2. Overview of the ePP Application Framework

• Chapter 3. Installation guidelines

• Chapter 4. Conclusion

Page 12: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 12 of 98

1. INTRODUCTION

1.1 Purpose and objectives

The overall aim of the ELLECTRA-WeB project is to specify, develop and test an open-source electronic Public Procurement (ePP) Application Framework and a set of Supporting Guidelines that will enable, on the one hand, Western Balkan ICT solution developers to cost-effectively develop, and, on the other hand, Western Balkan Public Organisations and Suppliers to easily deploy and use trusted, interoperable, user-friendly, secure and EC compliant electronic Public Procurement solutions.

The work that will be presented in this deliverable is part of the “Development of the ePP Application Framework” work package 3 (WP3) and covers the following tasks:

• Task T3.3: Development of the electronic Public Procurement Generation Engine.

The task T3.3 has been split for practical purposes into two subtasks (but not formally): (i) development, modifications and extension to the open-source MOFScript generation engine chosen for the ePP AF, and (ii) packaging of the ePP AF.

This deliverable focuses on the packaging of the ePP AF and describes the components of the ePP Application Framework and how to install it.

1.2 Target audience and relationship to other deliverables

Figure 1: Users of the ePP AF and their roles

The users of the ePP Application Framework may be distinguished into two different types according to their roles as shown in Figure 1.

• The ePP Framework Developer is responsible for the development and maintenance of the ePP AF, which includes activities such as maintenance of models and transformation rules.

• The ePP Application Developer is the end-user of the ePP AF that utilises the framework to develop an ePP solution as a Web-based application. This work includes activities such as installing the ePP AF and modelling, generating, implementing and testing ePP Web applications.

Page 13: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 13 of 98

The deliverables D2.2, D5.2, D10.1 and D11 are related and complements each other to form a complete documentation of all aspects of the ePP AF. In order to achieve a consistent and good documentation we have tried to minimize the overlap and focus on descriptions suited for the two different user roles of the ePP AF. This has resulted in the following:

• Deliverables D2.2 and D5.2 document the model architecture and the transformation rules, and are targeted at the ePP Framework Developer who is responsible for the information about the architecture of the framework and how to maintain and further develop it.

• Deliverables D10.1 and D11 document the installation and usage of the ePP AF and are targeted at the ePP Application Developer which does not necessarily need to understand the internal details of the ePP AF but only how to install and use it.

Figure 2: Installation of the ePP AF

This deliverable focuses on the activity “Install ePP AF” which gives an overview of the Eclipse-based ePP AF and a step-by-step guide for how to install and set it up.

1.3 Structure of the report

The report is organised as follows. Chapter 2 provides an overview of the ePP Application Framework. Chapter 3 documents the installation guidelines and Chapter 4 concludes this report. The appendix include: (i) a description of the content of the accompanying CD-ROM that contains the complete ePP AF and other components required to install and setup the framework, and (ii) the specifications describing the constraints of ePP forms - as part of the guidelines for the development of the corresponding component of ePP AF responsible for the production of part of the generated ePP solution’s front-end interface.

Page 14: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 14 of 98

2. OVERVIEW OF THE EPP APPLICATION FRAMEWORK

The architecture of the ePP Application Framework has been initially documented in Deliverable D3 - which was submitted in M6 - where the first version of the ePP Application Framework was released to be used: (i) as a proof-of-concept prototype, and (ii) for testing purposes. Since then several modifications/optimisations have been performed.

This Chapter describes the complete and updated architecture & specifications of the ePP Application Framework. The framework is built on top of the Eclipse Platform and several different plug-ins are integrated to form the framework. It is very important that ePP Application Developers have a thorough understanding of the components that form the framework as well as the technologies required for its operation.

2.1 ePP Application Framework specifications

The architecture of the ePP Application Framework is depicted in Figure 3. The architectural stack is composed of a collection of components. Every component is identified by a solid box; a dashed box represents an optional component that might be introduced into the architecture. A single component may consist of a number of different sub-components and plug-ins. The five major components identified within the architecture are listed below and described in more details in the following sub-sections.

• Eclipse platform: is the platform that integrates all the required plug-ins for the realization of the ePP Application Framework.

• Development Environment: corresponds to the required components for the development of models and code.

• Generation engine: is responsible for the transformation of models into code.

• ePP specific components: have been developed for the needs of the ePP AF. Examples of such components are fixed web-services to support different security implementation schemes, conversion of ePP forms (represented in XML standard) into PDF/HTML documents, deployment descriptors etc.

• Optional components: represent a collection of components that can be optionally integrated into the ePP Application Framework.

• ePP Application Framework Integration Plug-in: is responsible for the integration of all plug-ins under the Eclipse platform.

Electronic Public Procurement Application Framework

ePP Application Framework Integration Plug-in

Eclipse platform

Generation Engine

(MOFScript)

Traceability

Support

Optional components

Development Environment

Modelling Tools

ePP Model

Library

UML Profile for ePP

Applications

Code IDE

Web Tools Plattform

(WTP)

Java Development Tools

(JDT)

OCL

Model Validation

Papyrus UML editor

BPEL designer

JSF editor

(WTP)

BPELUML JSF

ePP specific components

Figure 3: ePP Application Framework Architecture

Page 15: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 15 of 98

All the components and plug-ins of the ePP AF architecture are Open-source and can be downloaded (or updated) directly from the Vendor’s official web-site. The ePP AF is provided as a pre-configured platform of Eclipse with all the necessary plug-ins installed and it is available for public access via SourceForge.net in [1]. Table 1 contains information on the required Eclipse plug-ins that constitutes each of the architecture’s components, along with their dependencies.

Table 1: ePP Application Framework plug-ins information

Component Plug-in / sub-component

Dependency ePP specific

Modelling Tool �/�

Papyrus UML editor UML2, EMF, GEF �

UML ePP Profile UML2 �

ePP Model Library UML ePP Profile �

OCL checker UML2, EMF, OCL, LPG �

BPEL designer EMF, GEF, DTP, WTP �

JSF editor WTP �

Code IDE �

WTP EMF, SDO, XSD, GEF, JEM

JDT JRE (Java), JDT APT, JDT Core, JDT Debug, JDT UI

Generation Engine �

MOFScript AntLR, UML2, EMF �

Traceability Support MOFScript �

ePP Application Framework Integration Plug-in �

ePP Application Framework Integration Plug-in

UML Modelling Tool, Code IDE, Transformation Engine

�/�

Apart from the development environment and the rest of the framework’s architectural components that provide Application Developers with all the appropriate functionalities for the development of ePP solutions, the ePP Application Framework also requires a server environment, where the ePP solutions are deployed, as well as a testing environment, where the ePP solutions are tested, before put into operation – this is discussed in section 2.4.

2.2 Framework components

This section describes in detail the components of the ePP Application Framework.

2.2.1 Eclipse platform

Eclipse is an extensible, Open-source Integrated Development Environment (IDE). It is part of a project originally launched in November 2001, when IBM donated $40 million worth of source-code from WebSphere Studio Workbench [2] and formed the Eclipse Consortium to manage the continued development of the tool [3]. Eclipse plug-ins embodies an architectural pattern for building an application from constituent parts. Plug-ins exist in an instance of the Eclipse workbench [4]. Examples of existing plug-ins are: Eclipse Meta Facility (EMF) [5], Java Development Tools (JDT) [6], Plug-in Development Environment (PDE) [7] and MOFScript [8].

Page 16: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 16 of 98

In the ELLECTRA-WeB project we are taking full advantage of the extensible architecture of the Eclipse platform by allowing several optional plug-ins (apart from the platform core components) to be added to the framework without the need for additional integration code.

2.2.2 Development Environment

The Development Environment provides the required components for the development of models and code, and it is consisted of the following basic components:

• The Modelling Tools, which provides the required functionality for the design of UML and BPEL models, as well as JSF web-pages which constitutes the front-end interface of the generated ePP solutions.

• The Code IDE, which provides an integrated development environment for the implementation of code.

2.2.2.1 UML Modelling Tool

The UML Modelling Tool is one of the Development Environment components that provide the required functionality for the design of models. Obviously, a UML editor forms one of the compulsory integral parts of the ePP AF but there is no restriction on which specific editor may be integrated to the framework, as far as it satisfies a collection of criteria.

The models that will be employed by the ePP AF will be based on the Eclipse implementation of the UML2 [9] specification. This ensures interoperability in the sense that an Application Developer may use any UML editor that conforms to UML2 for visualising and editing the ePP AF models. It is important to mention that UML2, in contrast with XMI, resolves conflict issues that emerge during the import/export of UML diagrams between different UML editors (even in commercial ones). The default UML modelling tool that we decided to use and integrate in the ePP AF is the Papyrus UML2 editor [10] due to its capabilities and its continues optimisation activities.

In the context of the UML Modelling Tool, the UML editor is extended by a collection of supplementary plug-ins that enhance its functionality. These are described in the following sub-sections.

UML Profile for Electronic Public Procurement Applications

The ePP UML profile defined within Deliverable D2.2 contains the ePP specific constructual language elements required for the design of models pertinent to ePP. The profile is implemented as an Eclipse plug-in and connected to the UML modelling environment. An Application Developer is able to apply specific stereotypes from the profile to the models with a few mouse-clicks.

EPP Model Library

A collection of UML and BPEL template models (constituting the PIM of an ePP solution) have been specified within the context of the ePP Application Framework – documented in Deliverable D2.2. An Application Developer apart from being able to build an ePP solution from scratch by using the ePP UML profile and defining his own models, s/he may take advantage of the pre-existing template models offered by the ePP AF. In this instance, the developer’s effort lies on the parameterisation of the existing models or the definition of new models based on the re-use, extension or optimisation of the pre-made ones.

Object Constraint Language Checker

The OCL Plug-in from the Model Development Tool Project [11] that is integrated to the UML modelling environment of the ePP AF enables the validation of models based on the constraints defined within the elements comprising those models – written in Object Constraint Language. The OCL checker may be used for the generation of a validation report that enables an Application Developer to resolve possible conflicts related with the design phase.

2.2.2.2 BPEL Designer

The second modelling editor integrated within the ePP AF is the BPEL designer [12] which supports the modelling of ePP business processes including (but not limited to) sequencing of process activities, correlation of messages and process instances, recovery behaviour in case of failures and exceptional conditions. The BPEL designer provides a visual environment for the design of BPEL models, including drag-and-drop functionality, and is fully compatible with other eclipse plug-ins, such as WST, EMF and

Page 17: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 17 of 98

GEF. An Application Developer may define his/her own BPEL models to describe the required ePP processes, or re-use/extend and optimise the pre-made template models offered by the ePP Model Library.

2.2.2.3 JSF Editor

Although, the web tier of an ePP solution is provided by the ePP AF off-the-self, implemented in JSF technology based on IDABC [13], an Application Developer has the capability of performing the necessary enhancements for conforming the front-end interface (of the generated ePP solution) to his/her needs. The integrated to the ePP AF, JSF editor, is part of the WTP project [14] and enables the easy creation of new web-pages or the modification of existing ones within a visual development environment – without the need of manually writing code.

2.2.2.4 Code IDE

The Code IDE is a component of the Development Environment that provides an IDE for code implementation. The combination of WTP [14] and JDT [6] plug-ins, described in the following sub-sections, constitutes a professional environment for hard-coded Software Development under Eclipse platform. This will allow an Application Developers to fill in the remaining code not generated by the ePP AF, as well as to extend the auto-generated code if this is required.

Web Tools Platform

The Eclipse Web Tools Platform (WTP) plug-in provides APIs for JEE and Web-centric application development. The current version of this plug-in does not support EJB 3.0, but it is very likely that this will be added on a future release. The plug-in includes both source and graphical editors for a variety of languages and offers appropriate functionality for the deployment, execution and testing of applications.

Java Development Tools

The Java Development Tools (JDT) plug-in provides the appropriate resources to form a Java IDE for the development of Java applications. It adds a Java project nature and Java perspective to the Eclipse Workbench as well as a number of views, editors, wizards, builders, code merging and re-factoring tools.

2.2.3 Generation Engine

The process of generating code from models is an important aspect of the ePP AF and requires a model to text transformation engine. The MOFScript generation engine which is part of the Eclipse GMT sub-project is employed by the ePP AF and amended as appropriately so as to meet the needs of the framework. Our choice on selecting this particular engine was made due to the following reasons:

• MOFScript is developed and maintained by SINTEF1, which ensures expertise and experience

from using the tool. MOFScript has been used in a number of other IST projects such as MODELWARE [15], MUSIC [16], MADDAM [17], ASSERT [18].

• The model transformation rules are defined in the MOFScript scripting language. This language is part of the OMG MOF Models to Text Standardisation process [19] within OMG.

The MOFScript generation engine provides the required capabilities to enable the parsing, checking, and executing of the model transformation rules. The MOFScript scripting language aims to be aligned with the principles of the QVT [20] and provide flexible mechanisms for generating text output. The language can be classified as to an imperatively-oriented language with traditional scope rules and with optionally typed variables.

Traceability Support

The traceability support is one of the most interesting parts of MOFScript generation engine. One of the main challenges in MDE is the management of relations between different artefacts produced during the Software Development process. As a system becomes more complex, the number of artefacts is

1 SINTEF is one of the partners of ELLECTRA-WeB consortium. It is the fourth largest leading European independent non-profit research foundation, with a long tradition and expertise in the areas of modelling, interoperability, and Model-Driven Development.

Page 18: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 18 of 98

increasing and therefore trace links are necessary to be defined in order to record dependencies that exist between those artefacts [21].

In the ePP AF, traceability is provided as a partly optional functionality. Preserving manually inserted code is default behaviour in MOFScript and can not be turned off. This ensures that an iterative and incremental approach of Software Development may be followed.

MOFScript is also capable of generating trace links automatically during the execution of model transformation rules. Trace information may be maintained (as an instance of the MOFScript traceability meta-model) and enable a number of different functionalities such as impact, coverage and orphan analysis. In addition, due to this information it is possible to navigate directly into unprotected regions in the code.

2.2.4 Optional components

Due to the extensibility feature of Eclipse platform further components/plug-ins may be integrated in the architecture of the ePP AF. The introduction of other (optional) components, may extent or enhance the functionality of the framework. For instance, the utilization of Subclipse [22] plug-in and TEAM [23] component may provide the basis for the realisation of a de-centralised collaborative Software Development environment. Subclipse is an Eclipse plug-in providing support for Subversion

2 [24] within

the Eclipse platform. TEAM provides a decentralised, personalised, context-based framework for sharing knowledge about software implementation that is seamlessly integrated into Eclipse platform.

2.2.5 ePP Application Framework Integration Plug-in

The purpose of this plug-in is to well integrate in a seamless manner all the identified plug-ins that constitute the ePP AF. An Application Developer should have the impression of working on a single development environment and this is the responsibility of the ePP Application Framework Integration plug-in. Appropriate graphical elements such as icon buttons and menu items are introduced on the desktop environment of Eclipse platform to abstract complex procedures that require the execution of a number of steps.

The current version of the ePP Application Framework released along with Deliverable D10.1 provides an Integrated Development Environment. It is envisaged that the second release of the framework to be released as part of Deliverable D10.2 will include: (i) help functionality and supporting guidelines to describe the necessary steps that have to be followed on the implementation of an ePP solution via the framework, and (ii) the automation or support by visual means of the procedure of generation and deployment as a whole.

2.3 Framework environment

All of the components discussed in previous section have been seamlessly integrated within Eclipse platform in order to form a concrete visual development toolkit (IDE) for producing ePP solutions following the MDD approach of software engineering. The look and feel of the framework is based on Eclipse platform since this is the core module of the ePP AF, but has been parameterized to address the needs of the Application Framework developer. A screen-shot of the ePP AF demonstrating the modeling of a PIM is illustrated in Figure 4.

2 Subversion is an advanced Control Versioning System (CVS) toolkit. It provides functionalities such as file locking, versioning, branching/tagging, merging, patching, reverting, synchronisation with main repository etc.

Page 19: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 19 of 98

Figure 4: The ePP Application Framework environment

The purpose of this section is to provide an overview of how the ePP specific components are integrated within the framework, and form part of its environment, rather than to provide a detail description of the development environment as a whole. A description of the ePP AF environment as well as its usage is addressed in detail by Deliverable D11.

As it is illustrated on top-left corner of Figure 4 (magnified in Figure 5), the ePP specific components are well maintained within a hierarchical directory structure.

Figure 5: Hierarchical directory structure of the ePP specific components

The name of each directory identifies the placeholder of the corresponding component/artifacts, in specific:

• components: is composed of two sub-directories; the supporting libraries contains as the name suggests, the coding libraries (organised into separate folders) required by the associated implemented components maintained within the second sub-directory named components which is further divided into the following sub-directories:

• classification codes: contain web-services for managing the ePP classification codes i.e. CPV, NUTS, VOC.

• document conversion: contains web-services for managing the conversion of ePP document expressed in XML format into PDF and HTML files.

Page 20: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 20 of 98

• eMailing infrastructure: contains web-services for handling the communication channel between the ePP solution and OJEU.

• GUI: contains the front-end components of an ePP solution expressed in JSF. These involve raw web-pages utilised by transformation rules for generating (i) the interface of an ePP solution, (ii) the ePP forms, such as the PIN, Contract Notice etc., and (iii) the administration console of the end system. All of the components have been implemented with reference to the IDABC demonstrator [25]. The constraints required for the validation of data entered within ePP forms have been defined and documented in APPENDIX B: Specifications of ePP form constraints.

• Security modules: contains web-services for supporting the security infrastructure of the ePP solution such as encrypting/decrypting and time-stamping ePP documents, and generating certificate keys. A Java client application has also been implemented for supporting the client-side encryption of ePP document i.e. tenders.

In general, the content of each component is organised into two distinct directories within the parent one, namely the src and dist. The source files of a component are maintained within the first folder, where the distribution files are placed within the later one.

• documentation: This directory is currently empty. In the next release of the ePP AF it will be populated with appropriate documentations to support the usage of the framework. Basically the Practice Guide that will be delivered from Deliverable D11 will form the basic of this documentation.

• reference models: contains a representation of the ePP UML profile and the Reference model3

expressed in UML – for the reference of the Application developer.

• scripts: contains all the required scripts to support the complete generation and deployment of an ePP solution, such as deployment descriptors.

• transformation rules: contains the transformation rules required by MOFscript generation engine which are divided into three categories according to their functionality:

• server-side: generate the Persistence layer and part of the business logic of the end ePP solution.

• client-side: generate the web tier of the end ePP solution.

• business-logic: generate BPEL-specific descriptors of the corresponding BPEL diagrams that describe ePP processes.

• ePP application: contains a reference ePP solution, composed of a number of sub-directories. In specific, the Models sub-directory is further divided into two other sub-directories containing a collocation of template models to constitute the Platform Independent Model of a generic ePP solution.

• UML: contains the User model expressed in UML,

• BPEL: contains a collection of models expressed in BPEL, where each BPEL model represents a Functional Requirements as it has been identified by IDABC [13].

2.4 Server and Testing environment

The ePP solutions generated from the ePP AF have to be deployed on an application server. There is no restriction on the type of application server that might be used, as long as it supports EJB 3.0 [26]. Examples of open-source application servers are JBoss [27], Glassfish [28] and Sun Java System Application Server [29].

In the same sense, a developer might choose any type of persistence medium to support the EIS tier of the architecture, as long as it is a relational database. The Java Persistence API abstracts vendor-specific database connection and access details from implementation code. The most popular open-source relational DBMS is MySQL [30] and Derby [31].

3 The Reference model contains specific information pertinent to ePP domain of which an Application Developer can use in order to describe the required functionality in his/her User model. More specifically, the Reference model captures information from the UML ePP profile. The primarily objective of the Reference model is to abstract the level of complexity,

Page 21: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 21 of 98

Moreover, a BPEL Server such as Open ESB [32] or ActiveBPEL [33] should be used to allow the execution of the BPEL files. The BPEL XML files are based on the definition of BPEL 2.0[34] and the BPEL server can be any open source server, which supports BPEL 2.0 and runs on any application server that supports EJB 3.0.

We have decided to use the following specific technologies for the target platform of the ePP AF:

• Sun Java System Application Server 9.1: the application server is based on GlassFish and is a Java Enterprise Edition 5 compatible platform that fully supports the EJB 3.0 standard for developing and delivering server side Java applications and Web Services.

• Open ESB 2: the Sun Java System Application Server does not come with a BPEL engine which is required by the ePP AF. Open ESB was chosen since it is an open source project that can easily be integrated with the Sun Java System Application Server, and it will become a standard way to work with BPEL and service-oriented integration.

• Derby 10.2: is a multithreaded, multi-user SQL database management system (DBMS) capable of running on a number of different platforms and it is bundled with the Sun Java System Application Server.

• EJBCA 3.6: is a fully functional platform-independent Certificate Authority based on JEE technology required for the management of security certificates. It can be used standalone or integrated in any JEE application. EJBCA[35] prerequisites the installation of JBoss application server on where it is deployed.

• soapUI 2.0.2 is a free and open source testing environment for inspecting, invoking, simulating and load testing Web services over HTTP. It is available both as a standalone product and as a plug-in for the Eclipse environment.

2.5 Java EE technologies

The ePP Application Framework utilizes Java Enterprise Edition (JEE)[29]. JEE is a descendant of the Java technology, built on the solid foundation of Java Standard Edition. The JEE is an extension to Java Standard Edition that allows developers to use Web technologies and develop enterprise applications. It is widely accepted as the industry standard for developing portable, robust, scalable and secure server-side Java applications. A wide range of APIs [36] assists the development of Service-Oriented Architecture and next-generation Web-based applications. JEE supports the following technologies:

• JavaServer Pages (JSP) [37] technology allows you to easily create Web content that has both static and dynamic components. A JSP page is a text document that contains two types of text: (i) static data, which can be expressed in any text-based format, and (ii) JSP elements, which construct dynamic content.

• JavaServer Faces (JSF) [38] technology is a server-side user interface component framework for Java technology-based Web applications. JSF includes amongst others a set of APIs for representing user interface (UI) components and managing their state, handling events and input validation, converting values, defining page navigation, and supporting internationalization and accessibility.

• Java Web Services (JAX-WS) [39] provides full support for W3C XML Schemas, maps Java Classes to XML data and is used to encode and decode data sent in Web Services calls. JAX-WS defines client APIs for accessing Web Services as well as techniques for implementing Web Service endpoints.

• Enterprise JavaBeans (EJB) [26] technology enables rapid and simplified development of distributed, transactional, secure and portable applications based on Java technology.

• Java Persistence API [40] provides an object/relational mapping facility to Java developers for managing relational data in Java applications. It is used to handle the communication between the business tier and the EIS tier (of the generated ePP solution).

2.5.1 Annotation-based Development

Annotation-based development is one of the latest Java development trends that enable a declarative style of programming. Annotations are meta-tags introduced into the code to describe package

Page 22: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 22 of 98

declarations, constructors, methods, parameters etc. This approach simplifies programming and allows indicating whether methods are dependent on other methods, whether they are incomplete, whether Classes have references to other Classes etc. Annotations do not directly affect program semantics, but rather trigger code generation tools to generate additional constructs e.g. a deployment descriptor for a specific Class.

Within the code of the generated ePP solutions, annotations are used to describe both Web-services and persistence objects. Annotations are defined for Stateless Session Beans (SLSB), Stateful Session Beans (SFSB), Entity Beans, Entity relationships and Object-Relational mappings. A Java Class that stores and maintains information into a database is declared as an Entity Bean. Entity relationships annotations are used to define the connection between two or more Entity Beans. Annotations within Entity Beans are also used for customization purposes, such as the definition of table and field names, configuration properties of each field etc. Session Beans are used for the implementation of Web-services, and Object-Relational mappings are used to define linear relationships between Java objects and corresponding database entities.

In addition annotations for security, transactions and internationalization are potential candidates in the generated ePP solution.

Page 23: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 23 of 98

3. INSTALLATION GUIDELINES

This Chapter aims at providing appropriate guidelines to ICT developers on how to setup the ePP Application Framework, as well the environment for deploying and testing the generated ePP solutions. The CD-ROM disk accompanied to this Deliverable contains all of the necessary installation files, which are also available for public access and may be downloaded from SourceForge.net in [1].

The installation files required for the setup of the ePP Application Framework are the:

• Ellectra-web ePP Application Framework.rar: which contains preconfigured all the necessary components that constitute an integrated MDD environment under the Eclipse platform, in other words the ePP Application Framework,

• java sdk 5.04.exe: this is the installation file of JEE4 which contains the:

• Java Development Kit 6.0,

• Sun Java System Application Server 9.1,

• Derby 10.2 DBMS,

• Open ESB 2 BPEL server,

but only the Java Development Kit (JDK) is required. This installation file is used both in the setup of the ePP AF and its deployment & testing environment for consistency purposes.

The installation files required for the setup of the server-side of the ePP AF for the deployment and testing of ePP solutions generated via the framework are the:

• java sdk 5.04.exe: the installation file of JEE required for the installation of the following:

• Java Development kit 6.0,

• Sun Java System Application Server 9.1,

• Derby 10.2 DBMS,

• Open ESB 2 BPEL server,

• ejbca 3.6.rar: the EJCBA Certificate Authority,

• jboss 4.2.2.zip: the JBoss application server required by EJBCA, and

The rest of this chapter is divided into two main sections to cover the installation of the ePP Application Framework and the installation of its deployment and testing environment (server-side) on Microsoft Windows operating system. The installation of the aforementioned files must proceed strictly in the order as it is presented in the following sections; otherwise conflict might occur between installations. The default hard-disk drive for both of the installations is assumed to be ‘C:\’.

3.1 Installation of the ePP Application Framework

The installation of the ePP Application Framework requires and must follow the setup of the JDK and therefore the order of installation is as follows:

• Java Development Kit

• ePP Application Framework

The following sub-sections describe in detail the required steps for the setup of the above software.

3.1.1 JEE platform

The installation of the JEE platform is required both by the ePP Application Framework and the server-side on where ePP solution generated via the framework will be deployed and tested. The installation begins by executing the “java sdk 5.04.exe” file.

4 Java EE 5 SDK Update 2 has been downloaded from http://java.sun.com/javaee/downloads/index.jsp

Page 24: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 24 of 98

• On the welcome window that appears (Figure 6), click the ‘Next’ button.

Figure 6: Installation of JEE – screenshot No.1

• The next window (Figure 7) contains licensing information. After you have read and agreed to the software licence agreement, select the ‘Yes’ radio-button click ‘Next’.

Figure 7: Installation of JEE – screenshot No.2

• In this window (Figure 8) the installation directory has to be defined. It is advised to use the proposed directory path as this will be also required in a later stage for setting up the environmental variables. Once you click ‘Next’, a new window pop-ups and informs you that the directory does not exist – this appears if you haven’t install JEE before; click ‘Create Directory’ to continue the installation.

Page 25: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 25 of 98

Figure 8: Installation of JEE – screenshot No.3

• In case a Windows security alert appears (Figure 9), click the ‘Unblock’ button.

Figure 9: Installation of JEE – screenshot No.4

• The rest of the installation involves the configuration of the Sun Java System Application Server. Of course, this is not required by the ePP Application Framework but it is compulsory for completing the installation – since the same file for the setup of the JEE platform for the ePP AF and its deployment & testing environment has been used (for consistency purposes).

Therefore, the configuration of the administrator console of the Sun Java System Application Server is performed in the window of Figure 10. Here the (i) administrator credentials, and (ii) the server ports for the admin console and the web-server with and without support of SSL protocol have to be defined. It is advisable to keep in a safe place the administrator credentials and use the default ports, unless the defined ports are bound by other applications. In order to proceed click ‘Next.

Page 26: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 26 of 98

Figure 10: Installation of JEE – screenshot No.5

• The next step (Figure 11) regards the setting up of environmental variables and operating system’s services. Check the second and forth check-box and click ‘next’. For the setup of the deployment & testing environment of the ePP AF, check the last check-box as well - as it is illustrated in figure. This will add the Sun Java System Application Server on the services of MS-Windows and will force the server to start-up after the operating system is in operation.

Figure 11: Installation of JEE – screenshot No.6

Page 27: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 27 of 98

• After the ‘Next’ button has been clicked, the window of Figure 12 appears. For the setup of the ePP Application Framework un-check all of the check-boxes and simply click ‘Next’. For the setup of the server-side of the ePP AF select the first check-box in order to include the installation of the OpenESB BPEL server. The Sun Java System Access Manager (third check-box) is not required either by the ePP AF or its deployment & testing environment; you may optionally choose it for the server-side.

Figure 12: Installation of JEE – screenshot No.7

• The window of Figure 13 briefly outlines the software products that will be installed. The installation of the appropriate files begins immediately after you click on the ‘Install Now’.

Figure 13: Installation of JEE – screenshot No.8

Page 28: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 28 of 98

• The window of Figure 14 provides a status bar visualising the installation progress. The process of transferring the necessary files to your local disk requires a number of minutes before it is completed. When the status bar reaches 100% the installation is almost complete.

Figure 14: Installation of JEE – screenshot No.9

• In the window of Figure 15 click ‘Next’ to skip the registration.

Figure 15: Installation of JEE – screenshot No.10

• The installation completes by clicking the ‘Finish’ button in the window of Figure 16. If you would like to launch the Sun Java System Application Server without restarting your computer click on the ‘Start Server’ button – this is required only for the setup of the server-side of the ePP AF. Once the

Page 29: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 29 of 98

server is launched MS-Windows might ask you (see Figure 17) whether you would like to block or unblock the running application; click ‘Unblock’.

Figure 16: Installation of JEE – screenshot No.11

Figure 17: Installation of JEE – screenshot No.12

Once the JEE platform has been installed the update of the environmental variables is required – this is performed after the setup of all the necessary software is completed, and it is discussed in section 3.1.3.

3.1.2 ePP Application Framework

The installation of the ePP Application Framework involves the un-compress of the ‘The ePP Application Framework.rar’ file into the root directory of the ‘C:\’ hard-disk drive. For the Application Framework developer’s convenience, we have basically performed a clean installation of Eclipse IDE on a PC, applied all the necessary plug-ins that constitute the ePP AF and configured them

Page 30: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 30 of 98

appropriately. It is strongly recommended to use winRAR5 for the extraction of the framework files,

because the Windows integrated zip tool might not un-compress the files properly.

After the ‘ePP Application Framework’ directory (from within the .rar file) has been saved into the hard-disk, open it and execute the ‘eclipse.exe’ - this will launch the ePP Application Framework. Once the Eclipse is started a welcome message will appear, close it and the next screen that should appear should look like the one illustrated in Figure 18. If the ‘SVN Repository’ tab is not visible in the top-left corner of Eclipse, then click on the double arrows (») on the right-top corner of Eclipse and change the perspective to ‘SVN Repository Exploring’.

Figure 18: SVN repository checkout from the ePP Application Framework

In order to download the latest framework components from the SVN repository hosted in INTRASOFT International S.A. follow the steps below:

• From within the ‘SVN Repository’ tab expand the ‘svn://193.192.38.78/ELLECTRA-WeB’ folder and select with the mouse all the directories. Right-click on the selected folders and select ‘Checkout…’ from the drop-down menu (as illustrated in the above figure).

• On the pop-up window that appears (left photo of Figure 19) select the first and second radio-buttons and click ‘Next’ – this will force to download the latest revisions of the software components.

• After ‘Next’ is pressed, the window illustrated in the right-side of Figure 19 appears for setting the directory path on where the framework files will be checked-out. It is advisable to use the default directory path (‘c:\workspace) proposed and click ‘Finish’.

• Then a new window appears visualising the downloading progress. Once all of the files are downloaded, the pop-up window disappears.

After the framework components have checked-out successfully click on the double arrows (») on the right-top corner of Eclipse and change the perspective to ‘Papyrus’ i.e. the UML modelling environment of the ePP Application Framework.

5 WinRAR is a compression tool. You may download a trial version from www.download.com at http://www.download.com/WinRAR/3000-2250_4-10690736.html?tag=pop.software.

Page 31: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 31 of 98

Figure 19: Checking-out the framework components from SVN

The next step concerns the configuration of the output source directory for the files generated by MOFScript generation engine and involves the execution of the following steps:

• From the ‘Navigator’ tab (left-top corner of Eclipse) expand the ‘eu.ellectraweb.framework. transformation.rules’ folder and navigate to the ‘ePPMainGenerator.m2t’ file placed within ‘server-side’ folder – as illustrated in left-side of Figure 20. It may be required to press ‘F5’ in the ‘Navigator’ tab for updating the contents of the directories.

Figure 20: Setting the MOFScript source directory – screenshot No.1

Page 32: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 32 of 98

• Right-click on the ‘ePPMainGenerator.m2t’ and select ‘Properties’ from the drop-down menu.

• On the pop-up window that will appear, select ‘MOFScript Properties’ from the left-hand side (Figure 20).

• Click ‘browse’ and from within the new pop-up window (Figure 21) navigate to and select the ‘src’ directory of your Eclipse workspace. The directory path should be ‘C:\workspace\eu.ellectraweb. solution.epp.application\src’. Click ‘OK’ twice in order to return to Eclipse.

Figure 21: Setting the MOFScript source directory – screenshot No.2

The final step regards the configuration of the user libraries required for the proper functionality of the coding environment (IDE) of the framework. This involves the execution of the following steps:

• Select ‘Windows->Preferences…’ from the menu. Navigate to the preferences for Java and select ‘User Libraries’ and then click the ‘New…’ button (Figure 22).

Figure 22: Setting up new user libraries

• We need to create four new user libraries for the ePP AF. Name the user libraries ‘JSF’, ‘JSFComponents’, ‘JSTL’ and ‘SunApplicationServer’. The following steps describe how to set up the ‘JSF’ user library (Figure 23).

Page 33: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 33 of 98

Figure 23: Creating a new user library

• Once the ‘JSF’ user library is defined we need to ‘Add JARs…’ to the library (Figure 24).

Figure 24: Add JARs to the user library

• Click the ‘Add JARs…’ button and navigate to your Eclipse workspace where the checked out (using Subclipse) ePP Eclipse projects are found. Navigate to the folder ‘Supporting Libraries/JSF’ in the ‘eu.ellectraweb.framework.components’ project and select the .jar files that you find (Figure 25).

Figure 25: JAR selection

• The added JARs should now show up in the user libraries (Figure 26).

Page 34: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 34 of 98

Figure 26: JARs added to the user libraries

• Repeat the steps in order to create the remaining user libraries. JARs under the ‘Supporting Libraries/JSF-Components’ folder should be added to the ‘JSFComponents’ user library, JARs under the ‘Supporting Libraries/JSTL’ folder should be added to the ‘JSTL’ user library and finally JARs under the ‘Supporting Libraries/SunApplicationServer’ folder should be added to the ‘SunApplicationServer’ user library (Figure 27).

Figure 27: Completion of user libraries

Once the ePP Application Framework and its dependencies (i.e. JEE platform) have been installed and configured what it remains is the update of the MS-Windows environmental variables, which is described in detail in the following section.

3.1.3 Updating the environmental variables

The setup of the ePP Application Framework is concluded with the update of the operating systems’ (MS-Windows) environmental variables. This involves the variables listed in Table 2. It is assumed that the JEE platform, and ePP Application Framework, have been installed in the proposed directories

Page 35: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 35 of 98

mentioned in previous sections. Otherwise, the alternative directory-names/paths chosen for the installed software should be reflected on the path directories of the variables’ values.

Table 2: MS-Windows environmental variables for the ePP AF

Variable Name Variable Value

User variables for Administrator JAVA_HOME C:\Sun\SDK\jdk

JAVAEE_HOME C:\Sun\SDK

PATH C:\Sun\SDK\bin;C:\Sun\SDK\jdk\bin;c:\ePP Application Framework;

In order to change the MS-Windows environmental variables follow the steps below:

• From the Windows “start” desktop menu icon ( ) navigate to ‘Control Panel’; either by following ‘start � Control Panel’ or ‘start � Settings � Control Panel’.

• On the Control Panel window search for and double-click the ‘System’ icon.

• From the System Properties window that will appear (left photo of Figure 28) select the ‘Advanced’ tab and click on the ‘Environment Variables’.

• In the new pop-up window emerged, named by ‘Environment Properties’ (illustrated in the right-side of Figure 28) click the ‘New’ or ‘Edit’ buttons to insert or update the appropriate environmental variables with reference to data defined in Table 2.

Figure 28: MS-Windows environmental variables

3.2 Installation of the deployment and testing environment of the ePP Application Framework

The installation of the server-side of ePP Application Framework i.e. on where ePP solutions generated via the framework will be deployed & tested, involves the setup of the following software in the order listed below:

• JEE platform

• Sun Java System Application Server

Page 36: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 36 of 98

• Open ESB BPEL server

• Derby DBMS

• JBoss Application Server

• EJBCA

The installation of JEE platform includes the Sun Java System Application Server, OpenESB BPEL server and Derby DBMS. The installation of the aforementioned software is well described in section 3.1.1. The following sections provide (i) guidelines on how to install EJBCA, which runs on top of JBoss Application Server, and (ii) instructions for checking the proper installation of the Sun Java System Application Server.

3.2.1 EJBCA Certificate Authority

The installation of EJBCA prerequisites the setup of the JBoss Application Server, which runs on top of it. In order to install JBoss and EJBCA, extract the contents of the ‘jboss 4.2.2.zip’ and ‘ejbca 3.6.rar’ files in the root directory of the ‘c:\’ hard-disk drive. This implies the reposition of the ‘jboss’ and ‘ejbca’ directories in the ‘c:\’ hard-disk drive.

After the installation of JEE platform and EJBCA has been completed what it remains is the update of the MS-Windows environmental variables, which is described in detail in the following section.

3.2.2 Updating the environmental variables

The setup of the server-side of the ePP Application Framework (deployment & testing environment) is concluded with the update of the operating systems’ (MS-Windows) environmental variables. This involves the variables listed in Table 3. It is assumed that the all software that constitutes the ePP AF’s server-side has been installed in the proposed directories mentioned in previous sections. Otherwise, the alternative directory-names/paths chosen for the installed software should be reflected on the path directories of the variables’ values.

Table 3: MS-Windows environmental variables for the server-side of the ePP AF

Variable Name Variable Value

User variables for Administrator JAVA_HOME C:\Sun\SDK\jdk

JAVAEE_HOME C:\Sun\SDK

JAVAEE_DEPLOY C:\Sun\SDK\domains\domain1\autodeploy

PATH C:\Sun\SDK\bin;C:\Sun\SDK\jdk\bin;

System variables APPSRV_HOME C:\jboss

JBOSS_HOME C:\jboss

EJBCA_HOME C:\ejbca

Instructions on how it is possible to amend the MS-Windows environmental variables may be found in section 3.1.3.

3.2.3 Checking the correctness of Sun Java System Application Server

In order to test that the Sun Java System Application Server has been installed successfully from within an Internet-browser (such as MS-Internet Explorer) try to access the following URL: http://<server-ip>:4848, where the <server_ip> corresponds to the IP number of the server on where Sun Java System Application Server has been installed. The port 4848 is used for accessing the administrator console. If a different port has been configured during installation please amend the URL appropriately. It is assumed that the server is running as a MS-Windows service – configured during the installation.

Once you access the aforementioned URL ideally the Internet-browser should return a web-page similar to the one illustrated in Figure 29 i.e. the administrator authentication console. If the Sun Java System Application Server has not been installed or configured properly then an error-page is returned.

Page 37: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 37 of 98

Figure 29: Login page of the Sun Java System Application Server’s Admin Console

In case of an error, a few things that worth looking at for resolving the conflict are:

• The server’s firewall does not block the ports configured for the Sun Application Server.

• The ports configured for the Sun Java System Application Server are not used by any other application.

• If the MS-Windows Internet Information Service (IIS) is running disable it from the services of control panel.

• If you are trying to access the administrator console from the Internet-browser installed in the server itself make sure that if a proxy server for internet.

• Open the log file of the Application server and search for any error messages. The log file is located in “<JEE directory> \ SDK \ domains \ domain1 \ logs \ server.log”.

Page 38: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 38 of 98

4. CONCLUSION

This report has given an overview of the ePP Application Framework and described the open source Eclipse components that the application framework has been built on. The framework has been packaged as an Eclipse bundle, which consists of the ePP-specific components developed in WP2 and WP3 and the chosen Eclipse components, in order to make the installation easier for the users of the framework. A detailed installation guideline, with appropriate screen shots, is also been documented in this report to further aid the installation and configuration of the development and server-side environment of the framework.

The version of the ePP AF described in this report represents the first complete release of the framework that is to be used in the trials in the Western Balkan. Based on user experience and feedback, further improvements in particular integration and usability of the Eclipse environment will be one area of focus, as well as bug-fixing of existing ePP-specific components.

Page 39: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 39 of 98

PART IV – APPENDICES

This part includes supplementary appendices.

• APPENDIX A: Accompanying CD-ROM

• APPENDIX B: Specifications of ePP form constraints

Page 40: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 40 of 98

5. APPENDIX A: ACCOMPANYING CD-ROM

With this deliverable follows an accompanying CD-ROM that contains:

• Ellectra-web ePP Application Framework.rar: Eclipse environment with all relevant plug-ins installed and configured to constitute the ePP Application Framework.

• java sdk 5.04.exe: Java Enterprise Edition (JEE), which includes the:

• Java Development Kit 6.0 necessary for the generation, compilation and debugging of Java code.

• Sun Java System Application Server 9.1 for supporting the web tier of the ePP solutions - deployment & testing of ePP solutions exposed as web-applications.

• Derby DBMS 10.2 for supporting the persistence tier of the ePP solutions.

• OpenESB 2 BPEL server for supporting the business tier of the ePP solutions - deployment & testing of ePP processes exposed as BPELs.

• ejbca 3.6.rar: EJBCA Certificate Authority for supporting security infrastructure i.e. the management of security certificates,

• jboss 4.2.2.zip: the JBoss Application Server required by EJBCA, which runs on top of it.

Page 41: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 41 of 98

6. APPENDIX B: SPECIFICATIONS OF EPP FORM CONSTRAINTS

This chapter documents the constraints required for the validation of the ePP form data. The chapter is mainly divided in three sections covering the following SIMAP ePP forms:

• Prior Information Notice,

• Contract Notice, and

• Contract Award Notice.

The identified constraints are expressed in a semi-formal language and have been used for the implementation of the corresponding ePP forms (of the ePP Application Framework) expressed in Java language. Apart from the constraints supported by the SIMAP ePP forms we have also documented a number of complementary constraints to address extra validation rules not covered by the former.

The documentation of the constraints is as follows. Every ePP form is divided into a number of sections, and for each section a ‘form fields’ and a ‘constraints’ section exists. The ‘form fields’ lists all of the form’s components (e.g. dynamic text-fields, check-boxes, radio-button etc.), where the ‘constraints’ section documents the validation rules applied to those components.

With regard to the approach of documenting/expressing the constraints:

• when a rule includes in its statements a large amount of fields that define an entire section, we use the form:

<Action> Section <number> e.g. Show Section III.A

in order to express the statement.

• when a rule includes statements that refer to individual fields, which belong to a single section or to several distinct sections, we use the form:

<field> = <action> e.g. A15=hide

• a number of fields (or even whole sections) may appear or made invisible according to users’ prior selections. In such cases we define such rules using the “enable” and “disable” actions for those fields.

6.1 Prior Information Notice

The Prior Information Notice is composed of the following eight sections:

• PRELIMINARY QUESTIONS

• SECTION I: CONTRACTING AUTHORITY

• SECTION II.A: OBJECT OF THE CONTRACT (WORKS)

• SECTION II.B: OBJECT OF THE CONTRACT (SUPPLIES OR SERVICES)

• SECTION III: LEGAL, ECONOMIC, FINANCIAL AND TECHNICAL INFORMATION

• SECTION VI: COMPLEMENTARY INFORMATION

• ANNEX A

• ANNEX B

The following sub-sections identify the constraints of the aforementioned ePP form sections. Additionally, a number of constraints not addressed by the SIMAP ePP forms are provided, such as the validation of entered dates and negative values.

Page 42: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 42 of 98

6.1.1 Preliminary Questions

6.1.1.1 Form Fields

Type of Contract:

A1 = (a) Works (Option) A2 = (b) Supplies (Option) A3 = (c) Services (Option) A4 = Quantity in section 2B (Text Box)

6.1.1.2 Constraints

Only one type of contract must be selected:

(A1=true) or (A2=true) or (A3=true)

If (A1=true) Then

A2=false

A3=false

Else If (A2=true) Then

A1=false

A3=false

Else If (A3=true) Then

A1=false

A2=false

Field validation:

If (A2=true or A3=true) Then

A4<>null

A4>0 // A4 must be a positive Integer

Other constraints:

If (A1=true) Then

A4=disable

Else If (A2=true) Then

A4=enable

Else If (A3=true) Then

A4=enable

If (A1=true) Then

Hide Section II.B

Show Section II.A

Show Section III.1.1

Else If (A2=true and A4>0) Then

Hide Section II.A

Hide Section III.1.1

For (i=1; i<=A4; i++)

Show Section II.B

A70=true

A70=show

A71=hide

A72=hide

Else If (A3=true and A4>0) Then

Hide Section II.A

Hide Section III.1.1

For (i=1; i<=A4; i++)

Show Section II.B

A70=hide

A71=true

A71=show

A72=show

A72<>null

6.1.2 SECTION I: Contracting Authority

6.1.2.1 Form Fields

Section I.1:

A5 = Official Name (Text Box) A6 = Postal Address (Text Area)

Page 43: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 43 of 98

A7 = Town (Text Box) A8 = Country (drop down) A9 = Postal code (Text Box) A10 = Contact points (Text Box) A11 = Telephone (Text Box) A12 = For the attention of (Text Box) A13 = Email (Text Box) A14 = Fax (Text Box) A15 = General address of the contracting authority url (Text Box) A16 = Address of the buyer profile url (Text Box) A17 = For further information, as in above mentioned contact point(s) (Option) A18 = For further information, other: please complete annex A.I. (Option)

Section I.2:

A19 = Ministry or any other national or federal authority, including their regional or local sub-divisions (Option)

A20 = National or federal agency/office (Option) A21 = Regional or local authority (Option) A22 = Regional or local agency/office (Option) A23 = Body governed by public law (Option) A24 = European institution/agency or international organisation (Option) A25 = Other (Option) A26 = please specify other (Text Box) A27 = General public services (check Box) A28 = Defence (check Box) A29 = Public order and safety (check Box) A30 = Environment (check Box) A31 = Economic and financial affairs (check Box) A32 = Health (check Box) A33 = Housing and community amenities (check Box) A34 = Social protection (check Box) A35 = Recreation, culture and religion (check Box) A36 = Education (check Box) A37 = Other (check Box) A38 = please specify other (Text Box) A39 = The contracting authority is purchasing on behalf of other contracting authorities

(Option) (Yes / No)

6.1.2.2 Constraints

Obligatory fields:

(A5<>null) and (A6<>null) and (A7<>null) and (A8<>null)

(A17<>null) or (A18<>null)

Field validation:

If (A13<>null) Then

A13=ValidEmail

If (A15<>null) Then

A15=ValidURL

If (A16<>null) Then

A16=ValidURL

Mutually exclusive fields:

If (A17=true) Then

A18=false

Else If (A18=True) Then

A17=false

Type of the contracting authority:

If (A19=true) Then

A20=false

A21=false

A22=false

A23=false

Page 44: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 44 of 98

A24=false

A25=false

A26=disable

Else If (A20=true) Then

A19=false

A21=false

A22=false

A23=false

A24=false

A25=false

A26=disable

Else If (A21=true) Then

A19=false

A20=false

A22=false

A23=false

A24=false

A25=false

A26=disable

Else If (A22=true) Then

A19=false

A20=false

A21=false

A23=false

A24=false

A25=false

A26=disable

Else If (A23=true) Then

A19=false

A20=false

A21=false

A22=false

A24=false

A25=false

A26=disable

Else If (A24=true) Then

A19=false

A20=false

A21=false

A22=false

A23=false

A25=false

A26=disable

Else If (A25=true) Then

A19=false

A20=false

A21=false

A22=false

A23=false

A24=false

A26=enable

Activities:

If (A37=true) Then

A38=enable

Else If (A37=false) Then

A38=disable

Other constraints:

If (A18=true) Then

Show Annex A Section I

Else If (A18=false) Then

Hide Annex A Section I

6.1.3 SECTION II.A: Object of the Contract

6.1.3.1 Form Fields

Section II.1:

A40 = Title Attributed To The Contract By The Contracting Authority (Text Box)

Section II.2:

A41 = Main site or location of works (Text Box) A42 = NUTS Code (Text Box) A43 = Nuts Code Selector (Button)

Page 45: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 45 of 98

Section II.3:

A44 = This Notice Involves A Framework Agreement (Option) (Yes / No)

Section II.4:

A45 = Short Description Of Nature And Scope Of Works (Text Area) A46 = Option1 (Option) A47 = Estimated cost of works excluding VAT (Text Box) A48 = Currency (drop down) A49 = Option2 (Option) A50 = between (Text Box) A51 = and (Text Box) A52 = Currency (drop down) A53 = Division into lots (Option) (Yes / No) A54 = Quantity of lots (Text Box)

Section II.5:

A55 = CPV Button (Button) A56 = Main vocabulary (Array of Text Boxes) A57 = Supplementary vocabulary (Array of Text Boxes) A58 = VOC (Array of Voc Buttons)

Section II.6:

A59 = Start of award procedures (Date Text Box) A60 = Duration in months (Option) A61 = months (Text Box) A62 = Duration in days (Option) A63 = days (Text Box) A64 = or Scheduled date (Option) A65 = Start of works (Date Text Box) A66 = Completion of works (Date Text Box)

Section II.7:

A67 = Contract Covered By The Government Procurement Agreement (Option) (Yes / No)

Section II.8:

A68 = Additional Information (Text Area)

6.1.3.2 Constraints

Obligatory fields:

(A45<>null) and (A56<>null)

If (A54<>null) Then

For (i=1; i<=A54; i++)

Show Annex B

Else If (A54==null) Then

Hide Annex B

Field validation:

If (A47<>null) Then

A47=AnyDoubleNumber //Positive or Negative

If (A50<>null) Then

A50=AnyDoubleNumber //Positive or Negative

If (A51<>null) Then

A51=AnyDoubleNumber //Positive or Negative

If (A54<>null) Then

A54>0 //A54 must be a positive Integer

If (A61<>null) Then

A61=AnyNumber //Integer or Double

If (A63<>null) Then

A63=AnyNumber //Integer or Double

Page 46: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 46 of 98

If (A59<>null) Then

A59=ValidDate(dd/mm/yyyy) or A59=ValidDate(ddmmyyyy)

If (A65<>null) Then

A65=ValidDate(dd/mm/yyyy) or A65=ValidDate(ddmmyyyy)

If (A66<>null) Then

A66=ValidDate(dd/mm/yyyy) or A66=ValidDate(ddmmyyyy)

Mutually exclusive fields:

If (A46=true) Then

A49=false

Else If (A49=true) Then

A46=false

If (A60=true) Then

A62=false

A64=false

Else If (A62=true) Then

A60=false

A64=false

Else If (A64=true) Then

A60=false

A62=false

Arithmetic comparisons:

If (A50<>null and A51<>null) Then

A50<A51

If (A65<>null and A66<>null) Then

A65<A66

Handle button pressing:

If (A43=pressed) Then

NutsSelector.Show

If (NutsSelector.SelectedNutsCode>0) Then

A42=NutsSelector.SelectedNutsCode

If (A55=pressed) Then

CPVSelector.Show

If (CPVSelector.NumberOfSelectedCPVCodes>0) Then

A56=Show

A57=Show

A58=Show

A56.Size=CPVSelector.NumberOfSelectedCPVCodes

A57.Size=CPVSelector.NumberOfSelectedCPVCodes

A58.Size=CPVSelector.NumberOfSelectedCPVCodes

For (i=0; i<A56.Size; i++)

A56[i]=CPVSelector.SelectedCPVCodes.get(i)

If (A58[i]=pressed) Then

VOCSelector.Show

If (VOCSelector.SelectedVocCodes>0) Then

A57[i]=VOCSelector.SelectedVocCodes

Enabled/Disabled fields:

If (A46=true) Then

A47=enable

A48=enable

A50=disable

A51=disable

A52=disable

Else If (A49=true) Then

A50=enable

A51=enable

A52=enable

A47=disable

A48= disable

If (A53=yes) Then

Page 47: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 47 of 98

A54=enable

Else If (A53=no) Then

A54=disable

If (A60=true) Then

A61=enable

A63=disable

A65=disable

A66=disable

Else If (A62=true) Then

A63=enable

A61=disable

A65=disable

A66=disable

Else If (A64=true) Then

A65=enable

A66=enable

A61=disable

A63=disable

6.1.4 SECTION II.B: Object of the Contract (Supplies or Services)

6.1.4.1 Form Fields

Section II.1:

A69 = Title Attributed To The Contract By The Contracting Authority (Text Box)

Section II.2 (Other fields):

A70 = Supplies (Option) A71 = Services (Option) A72 = Service category: No (drop down) (Values from 01 to 27)

Section II.2:

A73 = Main place of performance or of delivery (Text Box) A74 = NUTS Code (Text Box) A75 = Nuts Code Selector (Button)

Section II.3:

A76 = Short Description Of Nature And Quantity Or Value Of Supplies Or Services (Text Area)

A77 = Option1 (Option) A78 = Estimated cost excluding VAT (Text Box) A79 = Currency (drop down) A80 = Option2 (Option) A81 = between (Text Box) A82 = and (Text Box) A83 = Currency (drop down) A84 = Division into lots (Option) (Yes / No) A85 = Quantity of lots (Text Box)

Section II.4:

A86 = CPV Button (Button) A87 = Main vocabulary (Array of Text Boxes) A88 = Supplementary vocabulary (Array of Text Boxes) A89 = VOC (Array of Voc Buttons)

Section II.5:

A90 = Start of award procedures (Date Text Box)

Section II.6:

A91 = Contract Covered By The Government Procurement Agreement (Option) (Yes / No)

Section II.7:

A92 = Additional Information (Text Area)

6.1.4.2 Constraints

Obligatory fields:

Page 48: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 48 of 98

(A76<>null) and (A87<>null)

If (A85<>null) Then

For (i=1; i<=A85; i++)

Show Annex B

Else If (A85==null) Then

Hide Annex B

Field validation:

If (A72<>null) Then

A72=List.SelectedValue //SelectedValue ∈ [01,27]

If (A78<>null) Then

A78=AnyDoubleNumber //Positive or Negative

If (A81<>null) Then

A81=AnyDoubleNumber //Positive or Negative

If (A82<>null) Then

A82=AnyDoubleNumber //Positive or Negative

If (A85<>null) Then

A85>0 //A85 must be a positive Integer

If (A90<>null) Then

A90=ValidDate(dd/mm/yyyy) or A90=ValidDate(ddmmyyyy)

Mutually exclusive fields:

If (A77=true) Then

A80=false

Else If (A80=true) Then

A77=false

Arithmetic comparisons:

If (A81<>null and A82<>null) Then

A81<A82

Handle button pressing:

If (A75=pressed) Then

NutsSelector.Show

If (NutsSelector.SelectedNutsCode>0) Then

A74=NutsSelector.SelectedNutsCode

If (A86=pressed) Then

CPVSelector.Show

If (CPVSelector.NumberOfSelectedCPVCodes>0) Then

A87=Show

A88=Show

A89=Show

A87.Size=CPVSelector.NumberOfSelectedCPVCodes

A88.Size=CPVSelector.NumberOfSelectedCPVCodes

A89.Size=CPVSelector.NumberOfSelectedCPVCodes

For (i=0; i<A87.size; i++)

A87[i]=CPVSelector.SelectedCPVCodes.get(i)

If (A89[i]=pressed) Then

VOCSelector.Show

If (VOCSelector.SelectedVocCodes>0) Then

A88[i]=VOCSelector.SelectedVocCodes

Enabled/Disabled fields:

If (A77=true) Then

A78=enable

A79=enable

A79=disable

A81=disable

A82=disable

A83=disable

Else If (A80=true) Then

Page 49: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 49 of 98

A81=enable

A82=enable

A83=enable

A78=disable

A79=disable

If (A84=yes) Then

A85=enable

Else If (A84=no) Then

A85=disable

Other constraints:

If (A2=true) Then

A70=true

A70=show

A71=hide

A72=hide

Else If (A3=true) Then

A70=hide

A71=true

A71=show

A72=show

A72<>null //A72 must be assigned a value ∈ [01,27]

6.1.5 SECTION III: Legal, Economic, Financial and Technical Information

6.1.5.1 Form Fields

Section III.1.1:

A93 = Main financing conditions and payment arrangements and/or reference to the relevant provisions regulating them (only in case of works) (Text Area)

Section III.2.1:

A94 = Reserved Contracts (Option) (Yes / No) A95 = The contract is restricted to sheltered workshops (check Box) A96 = The execution of the contract is restricted to the framework of sheltered employment

programmes (check Box)

6.1.5.2 Constraints

Enabled/Disabled fields:

If (A94=yes) Then

A95=enable

A96=enable

Else If (A94=no or A94==null) Then

A95=disable

A96=disable

Other constraints:

If (A1=true) Then

A93=show

Else If (A2=true or A3=true) Then

A93=hide

6.1.6 SECTION VI: Complementary information

6.1.6.1 Form Fields

Section VI.1:

A97 = Contract Related To A Project And/Or Programme Financed by Community Funds (Option) (Yes / No)

A98 = If yes, Reference to projects and/or programmes (Text Area)

Section VI.2:

A99 = Additional Information (Text Area)

Section VI.3:

A100 = Tax legislation (Text Box)

Page 50: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 50 of 98

A101 = Environmental protection legislation (Text Box) A102 = Employment protection and working conditions (Text Box) A103 = Additional details, please fill Annex A.II-IV (check Box)

Section VI.4:

A104 = Date of Dispatch (Label)

6.1.6.2 Constraints

Obligatory fields:

A104<>null

A104=show

If (A97=yes) Then

A98<>null

Field validation:

A104=DateOfToday

If (A100<>null) Then

A100=ValidURL

If (A101<>null) Then

A101=ValidURL

If (A102<>null) Then

A102=ValidURL

Other constraints:

If (A103=true) Then

Show Annex A Section II

Show Annex A Section III

Show Annex A Section IV

Else If (A103=false) Then

Hide Annex A Section II

Hide Annex A Section III

Hide Annex A Section IV

6.1.7 ANNEX A

6.1.7.1 Form Fields Section I) Addresses And Contact Points From Which Further Information Can Be Obtained: A105 = Official Name (Text Box) A106 = Postal Address (Text Area) A107 = Town (Text box) A108 = Country (drop down) A109 = Postal code (Text box) A110 = Contact points (Text box) A111 = Telephone (Text Box) A112 = For the attention of (Text Box) A113 = Email (Text Box) A114 = Fax (Text Box) A115 = Internet address (URL) (Text Box) Section II) Address, Contact Points And Internet Site Of The Relevant Government Service From Which Information Can Be Obtained About Taxes: A116 = Official Name (Text Box) A117 = Postal Address (Text Area) A118 = Town (Text box) A119 = Country (drop down) A120 = Postal code (Text box) A121 = Contact points (Text box) A122 = Telephone (Text Box) A123 = For the attention of (Text Box) A124 = Email (Text Box) A125 = Fax (Text Box) A126 = Internet address (URL) (Text Box)

Page 51: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 51 of 98

Section III) Address, Contact Point And Internet Site Of The Relevant Government Service From Which Information Can Be Obtained About Environmental Protection: A127 = Official Name (Text Box) A128 = Postal Address (Text Area) A129 = Town (Text box) A130 = Country (drop down) A131 = Postal code (Text box) A132 = Contact points (Text box) A133 = Telephone (Text Box) A134 = For the attention of (Text Box) A135 = Email (Text Box) A136 = Fax (Text Box) A137 = Internet address (URL) (Text Box) Section IV) Address, Contact Points And Internet Site Of The Relevant Government Service From Which Information Can Be Obtained About Employment Protection And Working Conditions: A138 = Official Name (Text Box) A139 = Postal Address (Text Area) A140 = Town (Text box) A141 = Country (drop down) A142 = Postal code (Text box) A143 = Contact points (Text box) A144 = Telephone (Text Box) A145 = For the attention of (Text Box) A146 = Email (Text Box) A147 = Fax (Text Box) A148 = Internet address (URL) (Text Box)

6.1.7.2 Constraints

Obligatory fields:

If (Annex A Section I.IsShowed) Then

(A105<>null) and (A106<>null) and (A107<>null) and (A108<>null)

Field validation:

If (A113<>null) Then

A113=ValidEmail

If (A124<>null) Then

A124=ValidEmail

If (A135<>null) Then

A135=ValidEmail

If (A146<>null) Then

A146=ValidEmail

If (A115<>null) Then

A115=ValidURL

If (A126<>null) Then

A126=ValidURL

If (A137<>null) Then

A137=ValidURL

If (A148<>null) Then

A148=ValidURL

6.1.8 ANNEX B: Information about Lots

6.1.8.1 Form Fields A149 = LOT No (Text Box) A150 = LOT Title (Text Box)

Page 52: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 52 of 98

A151 = Short Description (Text Area) A152 = CPV (Button) A153 = Main vocabulary (Array of Text Boxes) A154 = Supplementary vocabulary (Array of Text Boxes) A155 = VOC (Array of Voc Buttons)

A156 = Quantity Or Scope (Text box) A157 = Option1 (Option) A158 = Estimated cost excluding VAT (Text Box) A159 = Currency (drop down) A160 = Option2 (Option) A161 = between (Text Box) A162 = and (Text Box) A163 = Currency (drop down)

A164 = Start of award procedures (Date Text Box) A165 = Duration in months (Option) A166 = months (Text Box) A167 = Duration in days (Option) A168 = days (Text Box) A169 = or Scheduled date (Option) A170 = Start of works (Date Text Box) A171 = Completion of works (Date Text Box)

A172 = Additional Information About Lots (Text Area)

6.1.8.2 Constraints

Obligatory fields:

A153<>null

Field validation:

If (A158<>null) Then

A158=AnyDoubleNumber //Positive or Negative

If (A161<>null) Then

A161=AnyDoubleNumber //Positive or Negative

If (A162<>null) Then

A162=AnyDoubleNumber //Positive or Negative

If (A164<>null) Then

A164=ValidDate(dd/mm/yyyy) or A164=ValidDate(ddmmyyyy)

If (A166<>null) Then

A166=AnyNumber //any Integer or Double

If (A168<>null) Then

A168=AnyNumber //any Integer or Double

If (A170<>null) Then

A170=ValidDate(dd/mm/yyyy) or A170=ValidDate(ddmmyyyy)

If (A171<>null) Then

A171=ValidDate(dd/mm/yyyy) or A171=ValidDate(ddmmyyyy)

Mutually exclusive fields:

If (A157=true) Then

A160=false

Else If (A160=true) Then

A157=false

Page 53: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 53 of 98

If (A165=true) Then

A167=false

A169=false

Else If (A167=true) Then

A165=false

A169=false

Else If (A169=true) Then

A165=false

A167=false

Arithmetic comparisons:

If (A161<>null and A162<>null) Then

A161<A162

If (A170<>null and A171<>null) Then

A170<A171

Handle button pressing:

If (A152=pressed) Then

CPVSelector.Show

If (CPVSelector.NumberOfSelectedCPVCodes>0) Then

A153=Show

A154=Show

A155=Show

A153.size=CPVSelector.NumberOfSelectedCPVCodes

A154.size=CPVSelector.NumberOfSelectedCPVCodes

A155.size=CPVSelector.NumberOfSelectedCPVCodes

For (i=0; i<A153.size; i++)

A153[i]=CPVSelector.SelectedCPVCodes.get(i)

If (A155[i]=pressed) Then

VOCSelector.Show

If (VOCSelector.SelectedVocCodes>0) Then

A154[i]=VOCSelector.SelectedVocCodes

Enabled/Disabled fields:

If (A157=true) Then

A158=enable

A159=enable

A161=disable

A162=disable

A163=disable

Else If (A160=true) Then

A161=enable

A162=enable

A163=enable

A158=disable

A159=disable

If (A165=true) Then

A166=enable

A168=disable

A170=disable

A171=disable

Else If (A167=true) Then

A168=enable

A166=disable

A170=disable

A171=disable

Else If (A169=true) Then

A170=enable

A171=enable

A166=disable

A168=disable

6.1.9 Complementary SIMAP constraints

Estimated cost:

If (A47<>null) Then

A47>0 //a positive double number

If (A50<>null) Then

Page 54: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 54 of 98

A50>0 //a positive double number

If (A51<>null) Then

A51>0 //a positive double number

If (A50<>null) Then

A51<>null

If (A51<>null) Then

A50<>null

If (A78<>null) Then

A78>0 //a positive double number

If (A81<>null) Then

A81>0 //a positive double number

If (A82<>null) Then

A82>0 //a positive double number

If (A81<>null) Then

A82<>null

If (A82<>null) Then

A81<>null

If (A158<>null) Then

A158>0 //a positive double number

If (A161<>null) Then

A161>0 //a positive double number

If (A162<>null) Then

A162>0 //a positive double number

If (A161<>null) Then

A162<>null

If (A162<>null) Then

A161<>null

Duration:

If (A61<>null) Then

A61>0 //a positive number

If (A63<>null) Then

A63>0 //a positive number

If (A65<>null) Then

If (A59<>null) Then

A65>A59

If (A66<>null) Then

If (A59<>null) Then

A66>A59

If (A166<>null) Then

A166>0 //a positive number

If (A168<>null) Then

A168>0 //a positive number

If (A170<>null) Then

If (A164<>null) Then

A170>A164

If (A171<>null) Then

If (A164<>null) Then

A171>A164

Start of procedures:

If (A59<>null) Then

A59>DateOfToday

If (A90<>null) Then

A90>DateOfToday

If (A164<>null) Then

Page 55: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 55 of 98

A164>DateOfToday

6.2 Contract Notice

The Contract Notice is composed of the following eight sections:

• PRELIMINARY QUESTIONS

• SECTION I: CONTRACTING AUTHORITY

• SECTION II: OBJECT OF THE CONTRACT

• SECTION III: LEGAL, ECONOMIC, FINANCIAL AND TECHNICAL INFORMATION

• SECTION IV: PROCEDURE

• SECTION VI: COMPLEMENTARY INFORMATION

• ANNEX A

• ANNEX B

The following sub-sections identify the constraints of the aforementioned ePP form sections. Additionally, a number of constraints not addressed by the SIMAP ePP forms are provided, such as the validation of entered dates and negative values.

6.2.1 Preliminary Questions

6.2.1.1 Form Fields

Type of Contract:

A1 = (a) Works (Option) A2 = (b) Supplies (Option) A3 = (c) Services (Option)

Type of Procedure:

A4 = Open (Option) A5 = Restricted (Option) A6 = Accelerated restricted (Option) A7 = Negotiated (Option) A8 = Accelerated negotiated (Option) A9 = Competitive dialogue (Option)

The Accelerated restricted, Negotiated, Accelerated negotiated and Competitive dialogue type of procedures are excluded from the purpose of this documentation.

6.2.1.2 Constraints

Only one type of contract must be selected:

(A1=true) or (A2=true) or (A3=true)

If (A1=true) Then

A2=false

A3=false

Else If (A2=true) Then

A1=false

A3=false

Else If (A3=true) Then

A1=false

A2=false

Only one type of procedure must be selected:

(A4=true) or (A5=true) or (A6=true) or (A7=true) or (A8=true) or (A9=true)

If (A4=true) Then

A5=false

Page 56: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 56 of 98

A6=false

A7=false

A8=false

A9=false

Else If (A5=true) Then

A4=false

A6=false

A7=false

A8=false

A9=false

Else If (A6=true) Then

A4=false

A5=false

A7=false

A8=false

A9=false

Else If (A7=true) Then

A4=false

A5=false

A6=false

A8=false

A9=false

Else If (A8=true) Then

A4=false

A5=false

A6=false

A7=false

A9=false

Else If (A9=true) Then

A4=false

A5=false

A6=false

A7=false

A8=false

6.2.2 SECTION I: Contracting Authority

6.2.2.1 Form Fields

Section I.1:

A10 = Official Name (Text Box) A11 = Postal Address (Text Area) A12 = Town (Text Box) A13 = Country (drop down) A14 = Postal code (Text Box) A15 = Contact points (Text Box) A16 = Telephone (Text Box) A17 = For the attention of (Text Box) A18 = Email (Text Box) A19 = Fax (Text Box) A20 = General address of the contracting authority url (Text Box) A21 = Address of the buyer profile url (Text Box) A22 = For further information, as in above mentioned contact point(s) (Option) A23 = For further information, other: please complete annex A.I. (Option) A24 = For specifications and additional documents, as in above mentioned contact point(s)

(Option) A25 = For specifications and additional documents, other: please complete annex A.II.

(Option) A26 = Tenders or requests to participate must be sent to, as in above mentioned contact

point(s) (Option) A27 = Tenders or requests to participate must be sent to, other: please complete annex A.III.

(Option)

Section I.2:

A28 = Ministry or any other national or federal authority, including their regional or local sub-divisions (Option)

A29 = National or federal agency/office (Option) A30 = Regional or local authority (Option) A31 = Regional or local agency/office (Option) A32 = Body governed by public law (Option)

Page 57: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 57 of 98

A33 = European institution/agency or international organisation (Option) A34 = Other (Option) A35 = please specify other (Text Box) A36 = General public services (check Box) A37 = Defence (check Box) A38 = Public order and safety (check Box) A39 = Environment (check Box) A40 = Economic and financial affairs (check Box) A41 = Health (check Box) A42 = Housing and community amenities (check Box) A43 = Social protection (check Box) A44 = Recreation, culture and religion (check Box) A45 = Education (check Box) A46 = Other (check Box) A47 = please specify other (Text Box) A48 = The contracting authority is purchasing on behalf of other contracting authorities

(Option) (Yes / No)

6.2.2.2 Constraints

Obligatory fields:

(A10<>null) and (A11<>null) and (A12<>null) and (A13<>null)

(A22<>null or A23<>null) and (A24<>null or A25<>null) and (A26<>null or A27<>null)

Field validation:

If (A18<>null) Then

A18=ValidEmail

If (A20<>null) Then

A20=ValidURL

If (A21<>null) Then

A16=ValidURL

Mutually exclusive fields:

If (A22=true) Then

A23=false

Else if (A23=true) Then

A22=false

IF (A24=true) Then

A25=false

Else if (A25=true) Then

A24=false

IF (A26=true) Then

A27=false

Else if (A27=true) Then

A26=false

Type of the contracting authority:

If (A28=true) Then

A29=false

A30=false

A31=false

A32=false

A33=false

A34=false

A35=disable

Else If (A29=true) Then

A28=false

A30=false

A31=false

A32=false

A33=false

A34=false

A35=disable

Else If (A30=true) Then

A28=false

A29=false

Page 58: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 58 of 98

A31=false

A32=false

A33=false

A34=false

A35=disable

Else If (A31=true) Then

A28=false

A19=false

A30=false

A32=false

A33=false

A34=false

A35=disable

Else If (A32=true) Then

A28=false

A29=false

A30=false

A31=false

A33=false

A34=false

A35=disable

Else If (A33=true) Then

A28=false

A29=false

A30=false

A31=false

A32=false

A34=false

A35=disable

Else If (A34=true) Then

A28=false

A29=false

A30=false

A31=false

A32=false

A33=false

A35=enable

Activities:

If (A46=true) Then

A47=enable

Else If (A46=false) Then

A47=disable

Other constraints:

If (A23=true) Then

Show Annex A Section I

Else If (A23=false) Then

Hide Annex A Section I

If (A25=true) Then

Show Annex A Section II

Else If (A25=false) Then

Hide Annex A Section II

If (A27=true) Then

Show Annex A Section III

Else If (A27=false) Then

Hide Annex A Section III

6.2.3 SECTION II: Object of the Contract

6.2.3.1 Form Fields

Section II.1 – DESCRIPTION:

A49 = Title Attributed To The Contract By The Contracting Authority (Text Box)

Section II.1.2:

A50 = (a) Works (Option) A51 = Execution (Option) A52 = Design and execution (Option) A53 = Realisation, by whatever means of work, corresponding to the requirements specified

by the contracting authorities (Option) A54 = Main site or location of works (Text Area) A55 = NUTS code (Text Box)

Page 59: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 59 of 98

A56 = Nuts Code Selector (Button)

Section II.1.3:

A57 = This Notice Involves: A Public Contract (Option) A58 = This Notice Involves: The setting up of a dynamic purchasing system (DPS) (Option) A59 = This Notice Involves: The establishment of a framework agreement (Option)

Section II.1.4:

A60 = Framework agreement with several operators (Option) A61 = Framework agreement with a single operator (Option) A62 = Number (Option) A63 = Number of operators (Text Box) A64 = Maximum number (Option) A65 = Maximum number of participants (Text Box) A66 = Duration of the framework agreement in year(s) (Option) A67 = Years (Text Box) A68 = Duration of the framework agreement in month(s) (Option) A69 = Months (Text Box) A70 = Justification for a framework agreement, the duration of which exceeds four years

(Text Area) A71 = Option1 (Option) A72 = Estimated value excluding VAT (Text Box) A73 = Currency (drop down) A74 = Option2 (Option) A75 = between (Text Box) A76 = and (Text Box) A77 = Currency (drop down) A78 = Frequency and value of the contracts to be awarded (Text Box)

Section II.1.5:

A79 = Short Description of the contract or purchase(s) (Text Area)

Section II.1.6:

A80 = CPV Button (Button) A81 = Main vocabulary (Array of Text Boxes) A82 = Supplementary vocabulary (Array of Text Boxes) A83 = VOC (Array of Voc Buttons)

Section II.1.7:

A84 = Contract Covered By The Government Procurement Agreement (Option) (Yes / No)

Section II.1.8:

A85 = Division into lots (Option) (Yes / No) A86 = Quantity of lots (Text Box) A87 = one lot only (Option) A88 = one or more lots (Option) A89 = all lots (Option)

Section II.1.9:

A90 = Variants will be accepted (Option) (Yes / No)

Section II.2 - QUANTITY OR SCOPE OF THE CONTRACT:

A91 = Total quantity or scope including all lots and options (Text Area) A92 = Option1 (Option) A93 = Estimated value excluding VAT (Text Box) A94 = Currency (drop down) A95 = Option2 (Option) A96 = between (Text Box) A97 = and (Text Box) A98 = Currency (drop down)

Section II.2.2:

A99 = Options (Option) (Yes / No) A100 = If yes, description of these options (Text Area) A101 = Provisional timetable for recourse to these options in months (Option) A102 = Provisional timetable for recourse to these options in days (Option)

Page 60: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 60 of 98

A103 = months (Text Box) A104 = days (Text Box) A105 = Number of possible renewals (Option) A106 = renewals number (Text Box) A107 = Or Range (Option) A108 = between (Text Box) A109 = and (Text Box)

Section II.3 - DURATION OF THE CONTRACT OR TIME-LIMIT FOR COMPLETION:

A110 = Duration in months (Option) A111 = months (Text Box) A112 = Duration in days (Option) A113 = days (Text Box) A114 = or Starting (Option) A115 = Starting date (Date Text Box) A116 = Completion date (Date Text Box)

6.2.3.2 Constraints

Obligatory fields:

(A79<>null) and (A81<>null)

If (A85=yes) Then

A86<>null

(A87=true) or (A88=true) or (A89=true)

If (A99=yes) Then

A100<>null

Field validation:

If (A63<>null) Then

A63=AnyNumber //any Integer or Double

If (A65<>null) Then

A65=AnyNumber //any Integer or Double

If (A67<>null) Then

A67=AnyNumber //any Integer or Double

If (A69<>null) Then

A69=AnyNumber //any Integer or Double

If (A72<>null) Then

A72=AnyDoubleNumber //Positive or Negative

If (A75<>null) Then

A75=AnyDoubleNumber //Positive or Negative

If (A76<>null) Then

A76=AnyDoubleNumber //Positive or Negative

If (A86<>null) Then

A86>0 //A86 must be a positive Integer

If (A93<>null) Then

A93=AnyDoubleNumber //Positive or Negative

If (A96<>null) Then

A96=AnyDoubleNumber //Positive or Negative

If (A97<>null) Then

A97=AnyDoubleNumber //Positive or Negative

If (A103<>null) Then

A103=AnyNumber //any Integer or Double

Page 61: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 61 of 98

If (A104<>null) Then

A104=AnyNumber //any Integer or Double

If (A106<>null) Then

A106=AnyNumber //any Integer or Double

If (A108<>null) Then

A108=AnyNumber //any Integer or Double

If (A109<>null) Then

A109=AnyNumber //any Integer or Double

If (A111<>null) Then

A111=AnyNumber //any Integer or Double

If (A113<>null) Then

A113=AnyNumber //any Integer or Double

If (A115<>null) Then

A115=ValidDate(dd/mm/yyyy) or A115=ValidDate(ddmmyyyy)

If (A116<>null) Then

A116=ValidDate(dd/mm/yyyy) or A116=ValidDate(ddmmyyyy)

Mutually exclusive fields:

If (A51=true) Then

A52=false

A53=false

Else If (A52=true) Then

A51=false

A53=false

Else If (A53=true) Then

A51=false

A52=false

If (A57=true) Then

A58=false

A59=false

Else If (A58=true) Then

A57=false

A59=false

Else If (A59=true) Then

A57=false

A58=false

If (A60=true) Then

A61=false

Else If (A61=true) Then

A60=false

If (A62=true) Then

A64=false

Else If (A64=true) Then

A62=false

If (A66=true) Then

A68=false

Else If (A68=true) Then

A66=false

If (A71=true) Then

A74=false

Else If (A74=true) Then

A71=false

If (A87=true) Then

A88=false

A89=false

Else If (A88=true) Then

A87=false

A89=false

Else If (A89=true) Then

A87=false

A88=false

Page 62: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 62 of 98

If (A92=true) Then

A95=false

Else If (A95=true) Then

A92=false

If (A101=true) Then

A102=false

Else If (A102=true) Then

A101=false

If (A105=true) Then

A107=false

Else If (A107=true) Then

A105=false

If (A110=true) Then

A112=false

A114=false

Else If (A112=true) Then

A110=false

A114=false

Else If (A114=true) Then

A110=false

A112=false

Arithmetic comparisons:

If (A75<>null and A76<>null) Then

A75<A76

If (A96<>null and A97<>null) Then

A96<A97

If (A108<>null and A109<>null) Then

A108<A109

If (A115<>null and A116<>null) Then

A115<A116

Handle button pressing:

If (A56=pressed) Then

NutsSelector.Show

If (NutsSelector.SelectedNutsCodes>0) Then

A55=NutsSelector.SelectedNutsCodes

If (A80=pressed) Then

CPVSelector.Show

If (CPVSelector.NumberOfSelectedCPVCodes>0) Then

A81=Show

A82=Show

A83=Show

A81.Size=CPVSelector.NumberOfSelectedCPVCodes

A82.Size=CPVSelector.NumberOfSelectedCPVCodes

A83.Size=CPVSelector.NumberOfSelectedCPVCodes

For (i=0; i<A81.size; i++)

A81[i]=CPVSelector.SelectedCPVCodes.get(i)

If (A83[i]=pressed) Then

VOCSelector.Show

If (VOCSelector.SelectedVocCodes>0) Then

A82[i]=VOCSelector.SelectedVocCodes

Enabled/Disabled fields:

If (A60=true) Then

A62=enable

A64=enable

Else If (A61=true) Then

A62=disable

A63=disable

A64=disable

Page 63: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 63 of 98

A65=disable

If (A62=true) Then

A65=disable

A63=enable

Else If (A64=true) Then

A63=disable

A65=enable

If (A66=true) Then

A67=enable

A69=disable

Else If (A68=true) Then

A69=enable

A67=disable

If (A71=true) Then

A72=enable

A73=enable

A75=disable

A76=disable

A77=disable

Else If (A74=true) Then

A75=enable

A76=enable

A77=enable

A72=disable

A73=disable

If (A59=true) Then

A60=enable

A61=enable

A66=enable

A68=enable

A70=enable

A71=enable

A74=enable

A78=enable

Else If (A57=true or A58=true) Then

Section II.1.4=disable

If (A85=yes) Then

A86=enable

A87=enable

A88=enable

A89=enable

Else If (A85=no) Then

A86=disable

A87=disable

A88=disable

A89=disable

If (A92=true) Then

A93=enable

A94=enable

A96=disable

A97=disable

A98=disable

Else If (A95=true) Then

A96=enable

A97=enable

A98=enable

A93=disable

A94=disable

If (A99=yes) Then

A100=enable

A101=enable

A102=enable

A105=enable

A107=enable

Else If (A99=no) Then

A100=disable

A101=disable

A102=disable

A105=disable

A107=disable

A103=disable

A104=disable

A106=disable

Page 64: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 64 of 98

A108=disable

A109=disable

If (A101=true) Then

A103=enable

A104=disable

Else If (A102=true) Then

A104=enable

A103=disable

If (A105=true) Then

A106=enable

A108=disable

A109=disable

Else If (A107=true) Then

A108=enable

A109=enable

A106=disable

If (A110=true) Then

A111=enable

A113=disable

A115=disable

A116=disable

Else If (A112=true) Then

A113=enable

A111=disable

A115=disable

A116=disable

Else If (A114=true) Then

A115=enable

A116=enable

A111=disable

A113=disable

6.2.4 SECTION III: Legal, Economic, Financial and Technical Information

6.2.4.1 Form Fields

Section III.1 – Conditions relating to the contract:

A117 = Deposits and guarantees required (Text Area) A118 = Main financing conditions and payment arrangements and/or reference to the relevant

provisions regulating them (Text Area) A119 = Legal form to be taken by the group of economic operators to whom the contract is to

be awarded (Text Area) A120 = Other particular conditions to which the performance of the contract is subject

(Option) (Yes / No) A121 = If yes, description of particular conditions (Text Area)

Section III.2 – Conditions for participation:

A122 = Information on personal situation of economic operators, including requirements relating to enrolment on professional or trade registers (Text Area)

A123 = Information on Economic and financial capacity (Text Area) A124 = Minimum level(s) of standards possibly required for Economic and financial capacity

(Text Area) A125 = Information on Technical capacity (Text Area) A126 = Minimum level(s) of standards possibly required for Technical capacity (Text Area) A127 = Reserved Contracts (Option) (Yes / No) A128 = The contract is restricted to sheltered workshops (checkbox) A129 = The execution of the contract is restricted to the framework of sheltered employment

programmes (checkbox)

6.2.4.2 Constraints

Obligatory fields:

If (A120=yes) Then A121<>null

Page 65: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 65 of 98

Enabled/Disabled fields:

If (A120=yes) Then

A121=enable

Else If (A120=false) Then

A121=disable

If (A127=yes) Then

A128=enable

A129=enable

Else If (A127=false) Then

A128=disable

A129=disable

6.2.5 SECTION IV: Procedure

6.2.5.1 Form Fields

Section IV.1 – TYPE OF PROCEDURE:

A130 = Open (Option)

Section IV.2 – AWARD CRITERIA:

A131 = Lowest price (Option) A132 = The most economically advantageous tender in terms of (Option) A133 = the criteria stated below (Option) A134 = the criteria stated in the specifications (Option) A135 = Criteria (Array of Text Boxes, ArraySize=10) A136 = Weighting (Array of Text Boxes, ArraySize=10) A137 = An electronic auction will be used (Option) (Yes / No) A138 = If yes, additional information about electronic auction (Text Area)

Section IV.3 – ADMINISTRATIVE INFORMATION:

A139 = File reference number attributed by the contracting authority (Text Box)

Section IV.3.2:

A140 = Previous publication(s) concerning the same contract (Option) (Yes / No) A141 = If yes, Prior information notice (Option) A142 = If yes, Notice on a buyer profile (Option) A143 = Notice number in OJ: (Text Box) A144 = from (Text Box) A145 = to (Text Box) A146 = of (Date Text Box) A147 = Other previous publications (check Box) A148 = Table1 (Array of Text Boxes) A149 = Table2 (Array of Text Boxes) A150 = Table3 (Array of Text Boxes) A151 = Table4 (Array of Date Text Boxes) A152 = add (Hyperlink) A153 = delete (Array of “delete” Hyperlinks)

Selecting the A147 check-box triggers the creation of five dynamic tables (A148, A149, A150, A151 and A153) and the appearance of A152. When the A152 is clicked, a new line is added (i.e. the size of each table is increased by 1) and when the A153[i] is clicked, the i

th line is

removed (i.e. the size of each table is decreased by 1 and the ith object of each table is

removed).

Section IV.3.3:

A154 = Date limit (Date Text Box) A155 = Time limit (Text Box) A156 = Payable documents (Option) (Yes / No) A157 = If yes, price (Text Box) A158 = Currency (drop down) A159 = Terms and method of payment (Text Area)

Section IV.3.4 :

A160 = Date limit (Date Text Box) A161 = Time limit (Text Box)

Page 66: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 66 of 98

Section IV.3.6:

A162 = ES (check Box) A163 = CS (check Box) A164 = DA (check Box) A165 = DE (check Box) A166 = ET (check Box) A167 = EL (check Box) A168 = EN (check Box) A169 = FR (check Box) A170 = IT (check Box) A171 = LV (check Box) A172 = LT (check Box) A173 = HU (check Box) A174 = MT (check Box) A175 = NL (check Box) A176 = PL (check Box) A177 = PT (check Box) A178 = SK (check Box) A179 = SL (check Box) A180 = FI (check Box) A181 = SV (check Box) A182 = Other (Text Box)

Section IV.3.7:

A183 = Option1 (Option) A184 = Until (Date Text Box) A185 = Option2 (Option) A186 = month(s) (Text Box) A187 = Option3 (Option) A188 = days (Text Box)

Section IV.3.8:

A189 = Date (Date Text Box) A190 = Time (Text Box) A191 = Place (Text Box) A192 = Persons authorised to be present at the opening of tenders (Option) (Yes / No) A193 = If yes (Text Area)

6.2.5.2 Constraints

Obligatory fields:

A160<>null

If (A132=true) Then

A133=true or A134=true

If (A133=true) Then

A135[1]<>null

A136[1]<>null

If (A137=yes) Then

A138<>null

If (A140=yes) Then

A141=true or A142=true

If (A141=true or A142=true) Then

A143<>null

A144<>null

A145<>null

A146<>null

If (A147=true) Then

A148[1]<>null

A149[1]<>null

A150[1]<>null

A151[1]<>null

Page 67: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 67 of 98

If (A156=yes) Then

A157<>null

A158<>null

A159<>null

If (A192=yes) Then

A193<>null

Field validation:

For (i=0; i<10; i++)

If (A136[i]<>null) Then

A136[i]=AnyNumber //any Integer or Double

If (A143<>null) Then

A143=ValidNumber(DDDD) //D is a digit ∈ [0,9]

If (A144<>null) Then

A144=ValidNumber(DDD) //D is a digit ∈ [0,9]

If (A145<>null) Then

A145=ValidNumber(DDDDDD) //D is a digit ∈ [0,9]

If (A148[i]<>null) Then

A148[i]=ValidNumber(DDDD) //D is a digit ∈ [0,9]

If (A149[i]<>null) Then

A149[i]=ValidNumber(DDD) //D is a digit ∈ [0,9]

If (A150[i]<>null) Then

A150[i]=ValidNumber(DDDDDD) //D is a digit ∈ [0,9]

If (A146<>null) Then

A146=ValidDate(dd/mm/yyyy) or A146=ValidDate(ddmmyyyy)

If (A151[i]<>null) Then

A151[i]=ValidDate(dd/mm/yyyy) or A151[i]=ValidDate(ddmmyyyy)

If (A154<>null) Then

A154=ValidDate(dd/mm/yyyy) or A154=ValidDate(ddmmyyyy)

If (A155<>null) Then

A155=ValidTime(HH:MM) or A155=ValidTime(HHMM)

If (A156=yes) Then

A157=AnyDoubleNumber //Positive or Negative

If (A160<>null) Then

A160=ValidDate(dd/mm/yyyy) or A160=ValidDate(ddmmyyyy)

If (A161<>null) Then

A161=ValidTime(HH:MM) or A161=ValidTime(HHMM)

If (A184<>null) Then

A184= ValidDate(dd/mm/yyyy) or A184=ValidDate(ddmmyyyy)

If (A186<>null) Then

A186=AnyNumber //any Integer or Double

If (A188<>null) Then

A188=AnyNumber //any Integer or Double

If (A189<>null) Then

A189=ValidDate(dd/mm/yyyy) or A189=ValidDate(ddmmyyyy)

If (A190<>null) Then

A190= ValidTime(HH:MM) or A190=ValidTime(HHMM)

Page 68: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 68 of 98

Mutually exclusive fields:

If (A131=true) Then

A132=false

Else If (A132=true) Then

A131=false

If (A133=true) Then

A134=false

Else If (A134=true) Then

A133=false

If (A141=true) Then

A142=false

Else If (A142=true) Then

A141=false

If (A183=true) Then

A185=false

A187=false

Else If (A185=true) Then

A183=false

A187=false

Else If (A187=true) Then

A183=false

A185=false

Enabled/Disabled fields:

If (A131=true) Then

A133=disable

A134=disable

Else If (A132=true) Then

A133=enable

A134=enable

If (A133=true) Then

A135=enable

A136=enable

Else If (A134=true) Then

A135=disable

A136=disable

If (A137=yes) Then

A138=enable

Else If (A137=no) Then

A138=disable

If (A140=yes) Then

A141=enable

A142=enable

A147=enable

Else If (A140=no) Then

A141=disable

A142=disable

A147=disable

If (A141=true or A142=true) Then

A143=enable

A144=enable

A145=enable

A146=enable

If (A147=true) Then

A148=show

A149=show

A150=show

A151=show

A152=show

A153=show

A148.Size=A149.Size=A150.Size=A151.Size=A153.Size

Else If (A147=false)

A148=hide

A149=hide

A150=hide

A151=hide

A152=hide

A153=hide

If (A152=clicked) Then

A148.Size=A149.Size=A150.Size=A151.Size=A153.Size=Size++

Page 69: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 69 of 98

i=A148.Size

A148[i]=show

A149[i]=show

A150[i]=show

A151[i]=show

A153[i]=show

If (A153[i]=clicked) Then

A148[i]=hide

A149[i]=hide

A150[i]=hide

A151[i]=hide

A153[i]=hide

A148.Size=A149.Size=A150.Size=A151.Size=A153.Size=Size--

If (A154<>null) Then

A155=enable

Else If (A154==null) Then

A155=disable

If (A156=yes) Then

A157=enable

A158=enable

A159=enable

Else If (A156=no) Then

A157=disable

A158=disable

A159=disable

If (A160<>null) Then

A161=enable

Else If (A160==null) Then

A161=disable

If (A183=true) Then

A184=enable

A186=disable

A188=disable

Else If (A185=true) Then

A186=enable

A184=disable

A188=disable

Else If (A187=true) Then

A182=enable

A184=disable

A188=disable

If (A189<>null) Then

A190=enable

Else If (A189==null) Then

A190=disable

If (A192=yes) Then

A193=enable

Else If (A192=no) Then

A193=disable

6.2.6 SECTION VI: Complementary information

6.2.6.1 Form Fields

Section VI.1:

A194 = This is a recurrent procurement (Option) (Yes / No) A195 = If yes, estimated timing for further notices to be published (Text Box)

Section VI.2:

A196 = Contract related to a project and/or programme financed by EU funds (Option) (Yes / No)

A197 = If yes, Reference to project(s) and/or programme(s) (Text Area)

Section VI.3:

A198 = Additional Information (Text Area)

Section VI.4.1:

A199 = Official name (Text Box)

Page 70: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 70 of 98

A200 = Postal address (Text Area) A201 = Town (Text Box) A202 = Postal code (Text Box) A203 = Country (drop down) A204 = Email (Text Box) A205 = Telephone (Text Box) A206 = Fax (Text Box) A207 = Internet address (Text Box) A208 = Official name (Text Box) A209 = Postal address (Text Area) A210 = Town (Text Box) A211 = Postal code (Text Box) A212 = Country (drop down) A213 = Email (Text Box) A214 = Telephone (Text Box) A215 = Fax (Text Box) A216 = Internet address (Text Box)

Section VI.4.2:

A217 = Precise information on deadline(s) for lodging appeals (Text Area)

Section VI.4.3:

A218 = Official name (Text Box) A219 = Postal address (Text area) A220 = Town (Text Box) A221 = Postal code (Text Box) A222 = Country (drop down) A223 = Email (Text Box) A224 = Telephone (Text Box) A225 = Fax (Text Box) A226 = Internet address (Text Box)

Section VI.5:

A227 = Date Of Dispatch (Label)

6.2.6.2 Constraints

Obligatory fields:

A227<>null

A227=show

If (A194=yes) Then

A195<>null

If (A196=yes) Then

A197<>null

Field validation:

A227=DateOfToday

If (A204<>null) Then

A204=ValidEmail

If (A213<>null) Then

A213=ValidEmail

If (A223<>null) Then

A223=ValidEmail

If (A207<>null) Then

A207=ValidURL

If (A216<>null) Then

A216=ValidURL

If (A226<>null) Then

A226=ValidURL

Enabled/Disabled fields:

If (A194=yes) Then

Page 71: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 71 of 98

A195=enable

Else If (A194=no) Then

A195=disable

If (A196=yes) Then

A197=enable

Else If (A196=no) Then

A197=disable

6.2.7 ANNEX A

6.2.7.1 Form Fields

Section I) Addresses And Contact Points From Which Further Information Can Be Obtained:

A228 = Official Name (Text Box) A229 = Postal Address (Text Area) A230 = Town (Text box) A231 = Country (drop down) A232 = Postal code (Text box) A233 = Contact points (Text box) A234 = Telephone (Text Box) A235 = For the attention of (Text Box) A236 = Email (Text Box) A237 = Fax (Text Box) A238 = Internet address (URL) (Text Box)

Section II) Addresses And Contact Points From Which specifications and additional documents (including documents for competitive dialogue as well as a dynamic purchasing system) can be obtained:

A239 = Official Name (Text Box) A240 = Postal Address (Text Area) A241 = Town (Text box) A242 = Country (drop down) A243 = Postal code (Text box) A244 = Contact points (Text box) A245 = Telephone (Text Box) A246 = For the attention of (Text Box) A247 = Email (Text Box) A248 = Fax (Text Box) A249 = Internet address (URL) (Text Box)

Section III) Addresses And Contact Points To Which tenders/requests to participate must be sent:

A250 = Official Name (Text Box) A251 = Postal Address (Text Area) A252 = Town (Text box) A253 = Country (drop down) A254 = Postal code (Text box) A255 = Contact points (Text box) A256 = Telephone (Text Box) A257 = For the attention of (Text Box) A258 = Email (Text Box) A259 = Fax (Text Box) A260 = Internet address (URL) (Text Box)

6.2.7.2 Constraints

Obligatory fields:

If (Annex A Section I.IsShowed) Then

(A228<>null) and (A229<>null) and (A230<>null) and (A231<>null)

If (Annex A Section II.IsShowed) Then

Page 72: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 72 of 98

(A239<>null) and (A240<>null) and (A241<>null) and (A242<>null)

If (Annex A Section III.IsShowed) Then

(A250<>null) and (A251<>null) and (A252<>null) and (A253<>null)

Field validation:

If (A236<>null) Then

A236=ValidEmail

If (A247<>null) Then

A247=ValidEmail

If (A258<>null) Then

A258=ValidEmail

If (A238<>null) Then

A238=ValidURL

If (A249<>null) Then

A249=ValidURL

If (A260<>null) Then

A260=ValidURL

6.2.7.3 Complementary Form Fields

After validation of previous constraints, the ones below follow:

Section II.1.2 for Supplies:

A261 = Purchase (Option) A262 = Lease (Option) A263 = Rental (Option) A264 = Hire Purchase (Option) A265 = A combination of these (Option) A266 = Main place of delivery (Text Area)

Section II.2.2 for Supplies and Services:

A267 = Estimated timeframe for subsequent contracts in months (Option) A268 = Estimated timeframe for subsequent contracts in days (Option) A269 = months (Text Box) A270 = days (Text Box)

Section II.1.2 for Services:

A271 = Service category: No (drop down) A272 = Main place of performance (Text Area)

Section III.3:

A273 = Execution of the service is reserved to a particular profession (Option) (Yes / No) A274 = If yes, reference to the relevant law, regulation or administrative provision (Text Area) A275 = Legal entities should indicate the names and professional qualifications of the staff

responsible for the execution of the service (Option) (Yes / No)

Section IV.1.2:

A276 = Envisaged number of operators (Option) A277 = number (Text Box) A278 = Envisaged maximum number of operators (Option) A279 = minimum number (Text Box) A280 = maximum number (Text Box) A281 = Objective criteria for choosing the limited number of candidates (Text Area)

Section IV.3.5:

A282 = Date of dispatch of invitations to tender or to participate to selected candidates (Date Text Box)

A283 = (b) Supplies (Option) A284 = (c) Services (Option) A285 = Restricted (Option) A286 = Accelerated restricted (Option) A287 = Negotiated (Option) A288 = Accelerated negotiated (Option)

Page 73: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 73 of 98

A289 = Competitive dialogue (Option)

6.2.7.4 Constraints

Obligatory fields:

If (A273=yes) Then

A274<>null

If (A1=true) Then

A50=true

A50=show

Else If (A2=true) Then

A283=true

A283=show

Else If (A3=true) Then

A284=true

A284=show

Field validation:

If (A269<>null) Then

A269=AnyNumber //any Integer or Double

If (A270<>null) Then

A270=AnyNumber //any Integer or Double

If (A277<>null) Then

A277=AnyNumber //any Integer or Double

If (A279<>null) Then

A279=AnyNumber //any Integer or Double

If (A280<>null) Then

A280=AnyNumber //any Integer or Double

If (A279<>null and A280<>null) Then

A279<A280

If (A282<>null) Then

A282= ValidDate(dd/mm/yyyy) or A282=ValidDate(ddmmyyyy)

Mutually Exclusive fields:

If (A261=true) Then

A262=false

A263=false

A264=false

A265=false

Else If (A262=true) Then

A261=false

A263=false

A264=false

A265=false

Else If (A263=true) Then

A261=false

A262=false

A264=false

A265=false

Else If (A264=true) Then

A261=false

A262=false

A263=false

A265=false

Else If (A265=true) Then

A261=false

A262=false

A263=false

A264=false

If (A267=true) Then

A268=false

Else If (A268=true) Then

A267=false

Page 74: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 74 of 98

If (A276=true) Then

A278=false

Else If (A278=true) Then

A276=false

Enabled/Disabled fields:

If (A267=true) Then

A269=enable

A270=disable

Else If (A268=true) Then

A270=enable

A269=disable

If (A99=yes) Then

A267=enable

A268=enable

Else If (A99=no) Then

A267=disable

A268=disable

A269=disable

A270=disable

If (A273=yes) Then

A274=enable

Else If (A273=no) Then

A274=disable

If (A276=true) Then

A277=enable

A279=disable

A280=disable

Else If (A278=true) Then

A279=enable

A280=disable

A277=disable

If (A279<>null) Then

A280=enable

Other constraints:

If (A1=true) Then

A50=true

A50=show

A51=show

A52=show

A53=show

A54=show

A261=hide

A262=hide

A263=hide

A264=hide

A265=hide

A266=hide

A271=hide

A272=hide

Else If (A2=true) Then

A50=hide

A51=hide

A52=hide

A53=hide

A54=hide

A283=true

A283=show

A261=show

A262=show

A263=show

A264=show

A265=show

A266=show

A271=hide

A272=hide

A284=hide

Else If (A3=true) Then

A50=hide

A51=hide

A52=hide

A53=hide

A54=hide

A283=hide

A261=hide

Page 75: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 75 of 98

A262=hide

A263=hide

A264=hide

A265=hide

A266=hide

A284=true

A284=show

A271=show

A272=show

If (A4=true) Then

A130=true

A130=show

A285=hide

A286=hide

A287=hide

A288=hide

A289=hide

Else If (A5=true) Then

A285=true

A285=show

A130=hide

A286=hide

A287=hide

A288=hide

A289=hide //the other types of procedures haven’t been examined

If (A1=true) Then

A267=hide

A268=hide

A269=hide

A270=hide

Else If (A2=true or A3=true) Then

A267=show

A268=show

A269=show

A270=show

If (A3=true) Then

Show Section III.3

Else If (A1=true or A2=true) Then

Hide Section III.3

If (A4=true) Then

Hide Section IV.1.2

Else If (A5=true) Then

Show Section IV.1.2

If (A5=true) Then

Show Section IV.3.5

Hide Section IV.3.7

Hide Section IV.3.8

Else If (A4=true) Then

Hide Section IV.3.5

Show Section IV.3.7

Show Section IV.3.8

6.2.8 ANNEX B: Information about Lots

6.2.8.1 Form Fields A290 = LOT No (Text Box) A291 = LOT Title (Text Box) A292 = Short Description (Text Area) A293 = CPV (Button) A294 = Main vocabulary (Array of Text Boxes) A295 = Supplementary vocabulary (Array of Text Boxes) A296 = VOC (Array of Voc Buttons) A297 = Quantity Or Scope (Text box) A298 = Option1 (Option) A299 = Estimated cost excluding VAT (Text Box) A300 = Currency (drop down) A301 = Option2 (Option) A302 = between (Text Box)

Page 76: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 76 of 98

A303 = and (Text Box) A304 = Currency (drop down) A305 = Duration in months (Option) A306 = months (Text Box) A307 = Duration in days (Option) A308 = days (Text Box) A309 = or Starting (Option) A310 = Start date (Date Text Box) A311 = Completion date (Date Text Box) A312 = Additional Information About Lots (Text Area)

6.2.8.2 Constraints

Obligatory fields:

A294<>null

Field validation:

If (A306<>null) Then

A306=AnyNumber //any Integer or Double

If (A308<>null) Then

A308=AnyNumber //any Integer or Double

If (A299<>null) Then

A299=AnyDoubleNumber //Positive or Negative

If (A302<>null) Then

A302=AnyDoubleNumber //Positive or Negative

If (A303<>null) Then

A303=AnyDoubleNumber //Positive or Negative

If (A310<>null) Then

A310=ValidDate(dd/mm/yyyy) or A310=ValidDate(ddmmyyyy)

If (A311<>null) Then

A311=ValidDate(dd/mm/yyyy) or A311=ValidDate(ddmmyyyy)

Mutually exclusive fields:

If (A298=true) Then

A301=false

Else If (A301=true) Then

A298=false

If (A305=true) Then

A307=false

A309=false

Else If (A307=true) Then

A305=false

A309=false

Else If (A309=true) Then

A305=false

A307=false

Arithmetic comparisons:

If (A302<>null and A303<>null) Then

A302<A303

Handle button pressing:

If (A293=pressed) Then

CPVSelector.Show

If (CPVSelector.NumberOfSelectedCPVCodes>0) Then

A294=Show

A295=Show

A296=Show

A294.size=CPVSelector.NumberOfSelectedCPVCodes

A295.size=CPVSelector.NumberOfSelectedCPVCodes

Page 77: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 77 of 98

A296.size=CPVSelector.NumberOfSelectedCPVCodes

For (i=0; i<A294.size; i++)

A294[i]=CPVSelector.SelectedCPVCodes.get(i)

If (A296[i]=pressed) Then

VOCSelector.Show

If (VOCSelector.SelectedVocCodes>0) Then

A295[i]=VOCSelector.SelectedVocCodes

Enabled/Disabled fields:

If (A298=true) Then

A299=enable

A300=enable

A302=disable

A303=disable

A304=disable

Else If (A301=true) Then

A302=enable

A303=enable

A304=enable

A299=disable

A300=disable

If (A305=true) Then

A306=enable

A308=disable

A310=disable

A311=disable

Else If (A307=true) Then

A308=enable

A306=disable

A310=disable

A311=disable

Else If (A309=true) Then

A310=enable

A311=enable

A306=disable

A308=disable

Page 78: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 78 of 98

6.2.9 Complementary SIMAP constraints

Estimated cost:

If (A72<>null) Then

A72>0 //a positive double number

If (A75<>null) Then

A75>0 //a positive double number

If (A76<>null) Then

A76>0 //a positive double number

If (A75<>null) Then

A76<>null

If (A76<>null) Then

A75<>null

If (A93<>null) Then

A93>0 //a positive double number

If (A96<>null) Then

A96>0 //a positive double number

If (A97<>null) Then

A97>0 //a positive double number

If (A96<>null) Then

A97<>null

If (A97<>null) Then

A96<>null

If (A299<>null) Then

A299>0 //a positive double number

If (A302<>null) Then

A302>0 //a positive double number

If (A303<>null) Then

A303>0 //a positive double number

If (A302<>null) Then

A303<>null

If (A303<>null) Then

A302<>null

Duration:

If (A67<>null) Then

A67>0 //a positive number

If (A69<>null) Then

A69>0 //a positive number

If (A103<>null) Then

A103>0 //a positive number

If (A104<>null) Then

A104>0 //a positive number

If (A111<>null) Then

A111>0 //a positive number

If (A113<>null) Then

A113>0 //a positive number

If (A115<>null) Then

A116<>null

If (A116<>null) Then

A115<>null

If (A186<>null) Then

A186>0 //a positive number

If (A188<>null) Then

A188>0 //a positive number

Page 79: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 79 of 98

If (A269<>null) Then

A269>0 //a positive number

If (A270<>null) Then

A270>0 //a positive number

If (A306<>null) Then

A306>0 //a positive number

If (A308<>null) Then

A308>0 //a positive number

If (A310<>null) Then

A311<>null

If (A311<>null) Then

A310<>null

Dates of procedures:

If (A146<>null) Then

A146<DateOfToday

If (A151[i]<>null) Then

A151[i]<DateOfToday

If (A154<>null) Then

A154>DateOfToday

If (A160<>null) Then

A160>DateOfToday

If (A184<>null) Then

A184>DateOfToday

If (A189<>null) Then

A189>DateOfToday

If (A189<>null) Then

A189>=A160

If (A310<>null) Then

A310>DateOfToday

Other:

If (A63<>null) Then

A63>1 //A63 should be a positive(>1) Integer number

If (A65<>null) Then

A65>1 //A65 should be a positive(>1) Integer number

If (A106<>null) Then

A106>=0 //A106 should be a positive(>=0) Integer number

If (A108<>null) Then

A109<>null

If (A109<>null) Then

A108<>null

If (A108<>null) Then

A108>=0 //A108 should be a positive(>=0) Integer number

If (A109<>null) Then

A109>0 //A109 should be a positive Integer number

If (A277<>null) Then

A277>0 //A277 should be a positive Integer number

If (A279<>null) Then

A279>0 //A279 should be a positive Integer number

If (A280<>null) Then

A280>0 //A280 should be a positive Integer number

Page 80: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 80 of 98

For (i=0; i<10; i++)

If (A135[i]<>null) Then

A136[i]<>null

6.3 Contract Award Notice

The Contract Award Notice is composed of the following eight sections:

• PRELIMINARY QUESTIONS

• SECTION I: CONTRACTING AUTHORITY

• SECTION II: OBJECT OF THE CONTRACT

• SECTION IV: PROCEDURE

• SECTION V: AWARD OF CONTRACT

• SECTION VI: COMPLEMENTARY INFORMATION

• ANNEX C

• ANNEX D

The following sub-sections identify the constraints of the aforementioned ePP form sections. Additionally, a number of constraints not addressed by the SIMAP ePP forms are provided, such as the validation of entered dates and negative values. Annex C and D do not concern any constraints as they are composed of static text i.e. photos.

6.3.1 Preliminary Questions

6.3.1.1 Form Fields

Type of Contract:

A1 = (a) Works (Option) A2 = (b) Supplies (Option) A3 = (c) Services (Option)

Type of Procedure:

A4 = Open (Option) A5 = Restricted (Option) A6 = Accelerated restricted (Option) A7 = Competitive dialogue (Option) A8 = Negotiated with a call for competition (Option) A9 = Accelerated negotiated (Option) A10 = Negotiated with a call for competition (Option) A11 = Quantity in section V (Text box)

6.3.1.2 Constraints

Only one type of contract must be selected:

(A1=true) or (A2=true) or (A3=true)

If (A1=true) Then

A2=false

A3=false

Else If (A2=true) Then

A1=false

A3=false

Else If (A3=true) Then

A1=false

A2=false

Only one type of procedure must be selected:

(A4=true) or (A5=true) or (A6=true) or (A7=true) or (A8=true) or (A9=true) or (A10=true)

Page 81: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 81 of 98

If (A4=true) Then

A5=false

A6=false

A7=false

A8=false

A9=false

A10=false

Else If (A5=true) Then

A4=false

A6=false

A7=false

A8=false

A9=false

A10=false

Else If (A6=true) Then

A4=false

A5=false

A7=false

A8=false

A9=false

A10=false

Else If (A7=true) Then

A4=false

A5=false

A6=false

A8=false

A9=false

A10=false

Else If (A8=true) Then

A4=false

A5=false

A6=false

A7=false

A9=false

A10=false

Else If (A9=true) Then

A4=false

A5=false

A6=false

A7=false

A8=false

A10=false

Else If (A10=true) Then

A4=false

A5=false

A6=false

A7=false

A8=false

A9=false

Field validation

A11<>null

A11>0 //A11 must be a positive Integer number

For (i=1; i<=A11; i++)

Show Section V

Other constraints

If (A1=true) Then

A46=true

Show Section II1.2.a

Hide Section II1.2.b

Hide Section II1.2.c

Else If (A2=true) Then

A53=true

Show Section II1.2.b

Hide Section II1.2.a

A51=show

A52=show

Hide Section II1.2.c

Else If (A3=true) Then

A60=true

Show Section II1.2.c

Hide Section II1.2.a

A51=show

A52=show

Hide Section II1.2.b

If (A4=true) Then

A85=true

Page 82: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 82 of 98

A85=show

A86=hide

A87=hide

A88=hide

A89=hide

A90=hide

A91=hide

Else If (A5=true) Then

A85=hide

A86=true

A86=show

A87=hide

A88=hide

A89=hide

A90=hide

A91=hide

Else If (A6=true) Then

A85=hide

A86=hide

A87=true

A87=show

A88=hide

A89=hide

A90=hide

A91=hide

Else If (A7=true) Then

A85=hide

A86=hide

A87=hide

A88=true

A88=show

A89=hide

A90=hide

A91=hide

Else If (A8=true) Then

A85=hide

A86=hide

A87=hide

A88=hide

A89=true

A89=show

A90=hide

A91=hide

Else If (A9=true) Then

A85=hide

A86=hide

A87=hide

A88=hide

A89=hide

A90=true

A90=show

A91=hide

Else If (A10=true) Then

A85=hide

A86=hide

A87=hide

A88=hide

A89=hide

A90=hide

A91=true

A91=show

6.3.2 SECTION I: Contracting Authority

6.3.2.1 Form Fields

Section I.1:

A12 = Official Name (Text Box) A13 = Postal Address (Text Area) A14 = Town (Text Box) A15 = Country (drop down) A16 = Postal code (Text Box) A17 = Contact points (Text Box) A18 = Telephone (Text Box)

Page 83: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 83 of 98

A19 = For the attention of (Text Box) A20 = Email (Text Box) A21 = Fax (Text Box) A22 = General address of the contracting authority url (Text Box) A23 = Address of the buyer profile url (Text Box)

Section I.2:

A24 = Ministry or any other national or federal authority, including their regional or local sub-divisions (Option)

A25 = National or federal agency/office (Option) A26 = Regional or local authority (Option) A27 = Regional or local agency/office (Option) A28 = Body governed by public law (Option) A29 = European institution/agency or international organisation (Option) A30 = Other (Option) A31 = please specify other (Text Box) A32 = General public services (check Box) A33 = Defence (check Box) A34 = Public order and safety (check Box) A35 = Environment (check Box) A36 = Economic and financial affairs (check Box) A37 = Health (check Box) A38 = Housing and community amenities (check Box) A39 = Social protection (check Box) A40 = Recreation, culture and religion (check Box) A41 = Education (check Box) A42 = Other (check Box) A43 = please specify other (Text Box) A44 = The contracting authority is purchasing on behalf of other contracting authorities (Option) (Yes /

No)

6.3.2.2 Constraints

Obligatory fields:

(A12<>null) and (A13<>null) and (A14<>null) and (A15<>null)

Field validation:

If (A20<>null) Then

A20=ValidEmail

If (A22<>null) Then

A22=ValidURL

If (A23<>null) Then

A23=ValidURL

Type of the contracting authority:

If (A24=true) Then

A25=false

A26=false

A27=false

A28=false

A29=false

A30=false

A31=disable

Else If (A25=true) Then

A24=false

A26=false

A27=false

A28=false

A29=false

A30=false

A31=disable

Else If (A26=true) Then

A25=false

A24=false

A27=false

A28=false

A29=false

Page 84: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 84 of 98

A30=false

A31=disable

Else If (A27=true) Then

A25=false

A26=false

A24=false

A28=false

A29=false

A30=false

A31=disable

Else If (A28=true) Then

A25=false

A26=false

A27=false

A24=false

A29=false

A30=false

A31=disable

Else If (A29=true) Then

A25=false

A26=false

A27=false

A28=false

A24=false

A30=false

A31=disable

Else If (A30=true) Then

A25=false

A26=false

A27=false

A28=false

A29=false

A24=false

A31=enable

Activities:

If (A42=true) Then

A43=enable

Else If (A42=false) Then

A43=disable

6.3.3 SECTION II: Object of the Contract

6.3.3.1 Form Fields

Section II.1 – DESCRIPTION:

A45 = Title Attributed To The Contract By The Contracting Authority (Text Box)

Section II.2a:

A46 = (a) Works (Option) A47 = Execution (Option) A48 = Design and execution (Option) A49 = Realisation, by whatever means of work, corresponding to the requirements specified by the

contracting authorities (Option) A50 = Main site or location of works (Text Area) A51 = NUTS Code (Text Box) A52 = Nuts Code Selector (Button)

Section II.2b:

A53 = (b) Supplies (Option) A54 = Purchase (Option) A55 = Lease (Option) A56 = Rental (Option) A57 = Hire Purchase (Option) A58 = A combination of these (Option) A59 = Main place of delivery (Text Area)

Section II.2c:

A60 = (c) Services (Option) A61 = Service category: No (drop down) (Values from 01 to 27) A62 = In case of contract for service categories 17 to 27 see annex c, do you agree to the publication

of this notice (Option) (Yes / No) A63 = Main place of performance (Text Area)

Page 85: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 85 of 98

Section II1.3:

A64 = The conclusion of a framework agreement (Option) A65 = Contracts based on a dynamic purchasing system (DPS) (Option)

Section II1.4:

A66 = Short Description of the contract or purchase(s) (Text Area)

Section II1.5:

A67 = CPV (Button) A68 = Main vocabulary (Array of Text Boxes) A69 = Supplementary vocabulary (Array of Text Boxes) A70 = VOC (Array of Voc Buttons)

Section II1.6:

A71 = Contract Covered By The Government Procurement Agreement (Option) (Yes / No)

Section II.2 - TOTAL FINAL VALUE OF CONTRACT(S):

A72 = Option1 (Option) A73 = Value (Text Box) A74 = Currency (drop down) A75 = Excluding VAT (Option) A76 = Including VAT (Option) A77 = VAT rate (Text Box) A78 = Option2 (Option) A79 = Lowest (Text Box) A80 = Highest (Text Box) A81 = Currency (drop down) A82 = Excluding VAT (Option) A83 = Including VAT (Option) A84 = VAT rate (Text Box)

6.3.3.2 Constraints

Obligatory fields:

(A66<>null) and (A68<>null)

If (A1=true) Then

A46=true

Else If (A2=true) Then

A53=true

Else If (A3=true) Then

A60=true

Field validation:

If (A61<>null) Then

A61=List.SelectedValue //SelectedValue ∈ [01,27]

If (A73<>null) Then

A73=AnyDoubleNumber //Positive or Negative

If (A79<>null) Then

A79=AnyDoubleNumber //Positive or Negative

If (A80<>null) Then

A80=AnyDoubleNumber //Positive or Negative

If (A77<>null) Then

0 <= A77 <= 100

If (A84<>null) Then

0 <= A84 <= 100

Mutually exclusive fields:

If (A47=true) Then

A48=false

A49=false

Else If (A48=true) Then

Page 86: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 86 of 98

A47=false

A49=false

Else If (A49=true) Then

A47=false

A48=false

If (A54=true) Then

A55=false

A56=false

A57=false

A58=false

Else If (A55=true) Then

A54=false

A56=false

A57=false

A58=false

Else If (A56=true) Then

A55=false

A54=false

A57=false

A58=false

Else If (A57=true) Then

A55=false

A56=false

A54=false

A58=false

Else If (A58=true) Then

A55=false

A56=false

A57=false

A54=false

If (A64=true) Then

A65=false

If (A65=true) Then

A64=false

If (A72=true) Then

A78=false

If (A78=true) Then

A72=false

If (A75=true) Then

A76=false

Else If (A76=true) Then

A75=false

If (A82=true) Then

A83=false

Else If (A83=true) Then

A82=false

Arithmetic comparisons:

If (A80<>null and A79<>null) Then

A80>A79

Handle button pressing:

If (A52=pressed) Then

NutsSelector.Show

If (NutsSelector.SelectedNutsCode>0) Then

A51=NutsSelector.SelectedNutsCode

If (A67=pressed) Then

CPVSelector.Show

If (CPVSelector.NumberOfSelectedCPVCodes>0) Then

A68=Show

A69=Show

A70=Show

A68.Size=CPVSelector.NumberOfSelectedCPVCodes

A69.Size=CPVSelector.NumberOfSelectedCPVCodes

A70.Size=CPVSelector.NumberOfSelectedCPVCodes

For (i=0; i<A68.Size; i++)

A68[i]=CPVSelector.SelectedCPVCodes.get(i)

If (A70[i]=pressed) Then

VOCSelector.Show

Page 87: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 87 of 98

If (VOCSelector.SelectedVocCodes>0) Then

A69[i]=VOCSelector.SelectedVocCodes

Enabled/Disabled fields:

If (A72=true) Then

A73=enable

A74=enable

A75=enable

A76=enable

A77=disable

A79=disable

A80=disable

A81=disable

A82=disable

A83=disable

A84=disable

Else If (A78=true) Then

A73=disable

A74=disable

A75=disable

A76=disable

A77=disable

A79=enable

A80=enable

A81=enable

A82=enable

A83=enable

If (A76=true) Then

A77=enable

Else If (A76=false) Then

A77=disable

If (A83=true) Then

A84=enable

Else If (A83=false) Then

A84=disable

If (A61.SelectedValue>=17 and A61.SelectedValue<=27) Then

A62=enable

If (A61.SelectedValue<17) Then

A62=disable

6.3.4 SECTION IV: Procedure

6.3.4.1 Form Fields

Section IV.1 – TYPE OF PROCEDURE:

A85 = Open (Option) A86 = Restricted (Option) A87 = Accelerated restricted (Option) A88 = Competitive dialogue (Option) A89 = Negotiated with a call for competition (Option) A90 = Accelerated negotiated (Option) A91 = Negotiated with a call for competition (Option)

Section IV2.1:

A92 = Lowest price (Option) A93 = The most economically advantageous tender in terms of (Option) A94 = Criteria (Array of Text Boxes, ArraySize=10) A95 = Weighting (Array of Text Boxes, ArraySize=10)

Section IV2.2:

A96 = An electronic auction was used (Option) (Yes / No)

Section IV3.1:

A97 = File reference number attributed by the contracting authority (Text Box)

Section IV3.2:

A98 = Previous publication(s) concerning the same contract (Option) (Yes / No)

Page 88: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 88 of 98

A99 = If yes, Prior information notice (Option) A100 = If yes, Notice on a buyer profile (Option) A101 = Notice Number in OJ: (Text Box) A102 = from (Text Box) A103 = to (Text Box) A104 = of (Date Text Box) A105 = If yes, Contract notice (Option) A106 = If yes, Simplified contract notice (Option) A107 = Notice Number in OJ: (Text Box) A108 = from (Text Box) A109 = to (Text Box) A110 = of (Date Text Box) A111 = Other previous publications (check Box) A112 = Table1 (Array of Text Boxes) A113 = Table2 (Array of Text Boxes) A114 = Table3 (Array of Text Boxes) A115 = Table4 (Array of Date Text Boxes) A116 = delete (Array of Hyperlinks, all are named “delete”) A117 = add (Hyperlink)

Selecting the A111 check-box triggers the creation of five dynamic tables (A112, A113, A114, A115 and A116) and the appearance of A117. When the A117 is clicked, a new line is added (i.e. the size of each table is increased by 1) and when the A116[i] is clicked, the i

th line is removed (i.e. the size of

each table is decreased by 1 and the ith object of each table is removed).

6.3.4.2 Constraints

Obligatory fields

If (A93=true) Then

A94[1]<>null

A95[1]<>null

If (A111=true) Then

A112[1]<>null

A113[1]<>null

A114[1]<>null

A115[1]<>null

Field validation:

For (i=0; i<10; i++)

If (A95[i]<>null) Then

A95[i]=AnyNumber //any Integer or Double

If (A101<>null) Then

A101=ValidNumber(DDDD) //D is a digit ∈ [0,9]

If (A102<>null) Then

A102=ValidNumber(DDD) //D is a digit ∈ [0,9]

If (A103<>null) Then

A103=ValidNumber(DDDDDD) //D is a digit ∈ [0,9]

If (A107<>null) Then

A107=ValidNumber(DDDD) //D is a digit ∈ [0,9]

If (A108<>null) Then

A108=ValidNumber(DDD) //D is a digit ∈ [0,9]

If (A109<>null) Then

A109=ValidNumber(DDDDDD) //D is a digit ∈ [0,9]

If (A112[i]<>null) Then

A112[i]=ValidNumber(DDDD) //D is a digit ∈ [0,9]

If (A113[i]<>null) Then

A113[i]=ValidNumber(DDD) //D is a digit ∈ [0,9]

Page 89: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 89 of 98

If (A114[i]<>null) Then

A114[i]=ValidNumber(DDDDDD) //D is a digit ∈ [0,9]

If (A104<>null) Then

A104=ValidDate(dd/mm/yyyy) or A104=ValidDate(ddmmyyyy)

If (A110<>null) Then

A110=ValidDate(dd/mm/yyyy) or A110=ValidDate(ddmmyyyy)

If (A115[i]<>null) Then

A115[i]=ValidDate(dd/mm/yyyy) or A115[i]=ValidDate(ddmmyyyy)

Mutually exclusive fields:

If (A92=true) Then

A93=false

Else If (A93=true) Then

A92=false

Enabled/Disabled fields:

If (A92=true) Then

A94=disable

A95=disable

Else If (A93=true) Then

A94=enable

A95=enable

If (A99=true or A100=true) Then

A101=enable

A102=enable

A103=enable

A104=enable

If (A105=true or A106=true) Then

A107=enable

A108=enable

A109=enable

A110=enable

If (A98=yes) Then

A99=enable

A100=enable

A105=enable

A106=enable

A111=enable

Else If (A98=no) Then

A99=disable

A100=disable

A101=disable

A102=disable

A103=disable

A104=disable

A105=disable

A106=disable

A107=disable

A108=disable

A109=disable

A110=disable

A111=disable

If (A111=true) Then

A112=show

A113=show

A114=show

A115=show

A116=show

A117=show

A112.Size=A113.Size=A114.Size=A115.Size=A116.Size

Else If (A111=false) Then

A112=hide

A113=hide

A114=hide

A115=hide

A116=hide

A117=hide

If (A116[i]=clicked) Then

A112[i]=hide

Page 90: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 90 of 98

A113[i]=hide

A114[i]=hide

A115[i]=hide

A116[i]=hide

A112.Size=A113.Size=A114.Size=A115.Size=A116.Size=Size--

If (A117=clicked) Then

A112.Size=A113.Size=A114.Size=A115.Size=A116.Size=Size++

i=A112.Size

A112[i]=show

A113[i]=show

A114[i]=show

A115[i]=show

A116[i]=show

6.3.5 SECTION V: Award of Contract

6.3.5.1 Form Fields A118 = Contract No (Text Box) A119 = Title (Text Box)

Section V.1:

A120 = Date Of Contract Award (Date Text Box)

Section V.2:

A121 = Number of offers Received (Text Box)

Section V.3:

A122 = Official Name (Text Box) A123 = Postal Address (Text Area) A124 = Town (Text Box) A125 = Country (drop down) A126 = Postal code (Text Box) A127 = Telephone (Text Box) A128 = Email (Text Box) A129 = Fax (Text Box) A130 = Internet Address (Text Box)

Section V.4:

A131 = Initial estimated total value of the contract (Text Box) A132 = Currency (drop down) A133 = Excluding VAT (Option) A134 = Including VAT (Option) A135 = VAT rate (Text Box) A136 = Option1 (Option) A137 = Value (Text Box) A138 = Currency (drop down) A139 = Excluding VAT (Option) A140 = Including VAT (Option) A141 = VAT rate (Text Box) A142 = Option2 (Option) A143 = Lowest (Text Box) A144 = Highest (Text Box) A145 = Currency (drop down) A146 = Excluding VAT (Option) A147 = Including VAT (Option) A148 = VAT rate (Text Box) A149 = Option3 (Option) A150 = Number of Years (Text Box) A151 = Option4 (Option) A152 = Number of Months (Text Box)

Section V.5:

A153 = The Contract is likely to be sub-contracted (Option) (Yes / No) A154 = Option5 (Option) A155 = Value excluding VAT (Text Box)

Page 91: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 91 of 98

A156 = Currency (drop down) A157 = Option6 (Option) A158 = Proportion (Text Box) A159 = Option7 (Option) A160 = Not Known (check Box) A161 = Short Description (Text Area)

6.3.5.2 Constraints

Obligatory fields:

If (A153=yes) Then

A154=true or A157=true or A199=true

Field validation:

If (A120<>null) Then

A120=ValidDate(dd/mm/yyyy) or A120=ValidDate(ddmmyyyy)

If (A121<>null) Then

A121=AnyNumber //any Integer or Double

If (A128<>null) Then

A128=ValidEmail

If (A130<>null) Then

A130=ValidURL

If (A131<>null) Then

A131=AnyDoubleNumber //Positive or Negative

If (A135<>null) Then

0 <= A135 <= 100

If (A141<>null) Then

0 <= A141 <= 100

If (A148<>null) Then

0 <= A148 <= 100

If (A137<>null) Then

A137=AnyDoubleNumber //Positive or Negative

If (A143<>null) Then

A143=AnyDoubleNumber //Positive or Negative

If (A144<>null) Then

A144=AnyDoubleNumber //Positive or Negative

If (A150<>null) Then

A150=AnyNumber //Integer or Double

If (A152<>null) Then

A152=AnyNumber //Integer or Double

If (A155<>null) Then

A155=AnyDoubleNumber //Positive or Negative

If (A158<>null) Then

0<=A158<=100

Mutually exclusive fields:

If (A133=true) Then

A134=false

Else If (A134=true) Then

A133=false

If (A136=true) Then

A142=false

Else If (A142=true) Then

A136=false

If (A139=true) Then

Page 92: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 92 of 98

A140=false

Else If (A140=true) Then

A139=false

If (A146=true) Then

A147=false

Else If (A147=true) Then

A146=false

If (A149=true) Then

A151=false

Else If (A151=true) Then

A149=false

If (A154=true) Then

A157=false

A159=false

Else If (A157=true) Then

A154=false

A159=false

Else If (A159=true) Then

A154=false

A157=false

Arithmetic comparisons:

If (A143<>null and A144<>null) Then

A143<A144

Enabled/Disabled fields:

If (A154=true) Then

A155=enable

A156=enable

A158=disable

A160=disable

Else If (A157=true) Then

A158=enable

A155=disable

A156=disable

A160=disable

Else If (A159=true) Then

A160=enable

A155=disable

A156=disable

A158=disable

If (A133=true) Then

A135=disable

Else If (A134=true) Then

A135=enable

If (A139=true) Then

A141=disable

Else If (A140=true) Then

A141=enable

If (A146=true) Then

A148=disable

Else If (A147=true) Then

A148=enable

If (A136=true) Then

A137=enable

A138=enable

A139=enable

A140=enable

A143=disable

A144=disable

A145=disable

A146=disable

A147=disable

A148=disable

Else If (A142=true) Then

A143=enable

A144=enable

A145=enable

A146=enable

A147=enable

A137=disable

A138=disable

A139=disable

A140=disable

A141=disable

Page 93: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 93 of 98

If (A149=true) Then

A150=enable

A152=disable

If (A151=true) Then

A152=enable

A150=disable

If (A153=yes) Then

A154=enable

A157=enable

A159=enable

A161=enable

A155=disable

A156=disable

A158=disable

A160=disable

Else If (A153=no) Then

A154=disable

A155=disable

A156=disable

A157=disable

A158=disable

A159=disable

A160=disable

A161=disable

6.3.6 SECTION VI: Complementary information

6.3.6.1 Form Fields

Section VI.1:

A162 = Contract Related To A Project And/Or Programme Financed by Community Funds (Option) (Yes / No)

A163 = If yes, Reference to projects and/or programmes (Text Area)

Section VI.2:

A164 = Additional Information (Text Area)

Section VI.3 Procedures for Appeal:

A165 = Official Name (Text Box) A166 = Postal Address (Text Area) A167 = Town (Text Box) A168 = Country (drop down) A169 = Postal code (Text Box) A170 = Telephone (Text Box) A171 = Email (Text Box) A172 = Fax (Text Box) A173 = Internet address (Text Box) A174 = Official Name (Text Box) A175 = Postal Address (Text Area) A176 = Town (Text Box) A177 = Country (drop down) A178 = Postal code (Text Box) A179 = Telephone (Text Box) A180 = Email (Text Box) A181 = Fax (Text Box) A182 = Internet address (Text Box)

Section VI.3.2:

A183 = Lodging of Appeals (Text Area)

Section VI.3.3:

A184 = Official Name (Text Box) A185 = Postal Address (Text Area) A186 = Town (Text Box) A187 = Country (drop down) A188 = Postal code (Text Box) A189 = Telephone (Text Box) A190 = Email (Text Box)

Page 94: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 94 of 98

A191 = Fax (Text Box) A192 = Internet address (Text Box)

Section VI.4:

A193 = Date of Dispatch (Label)

6.3.6.2 Constraints

Obligatory fields:

A193<>null

A193=show

If (A162=yes) Then

A163<>null

Field validation:

A193=DateOfToday

If (A171<>null) Then

A171=ValidEmail

If (A173<>null) Then

A173=ValidURL

If (A180<>null) Then

A180=ValidEmail

If (A182<>null) Then

A182=ValidURL

If (A190<>null) Then

A190=ValidEmail

If (A192<>null) Then

A192=ValidURL

Enabled/Disabled fields:

If (A162=yes) Then

A163=enable

Else If (A162=no) Then

A163=disable

6.3.7 Complementary SIMAP constraints

Estimated cost:

If (A73<>null) Then

A73>0 //a positive double number

If (A79<>null) Then

A79>0 //a positive double number

If (A80<>null) Then

A80>0 //a positive double number

If (A79<>null) Then

A80<>null

If (A80<>null) Then

A79<>null

If (A131<>null) Then

A131>0 //a positive double number

If (A137<>null) Then

A137>0 //a positive double number

If (A143<>null) Then

A143>0 //a positive double number

If (A144<>null) Then

A144>0 //a positive double number

If (A143<>null) Then

Page 95: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 95 of 98

A144<>null

If (A144<>null) Then

A143<>null

If (A155<>null) Then

A155>0 //a positive double number

Duration:

If (A150<>null) Then

A150>0 //a positive number

If (A152<>null) Then

A152>0 //a positive number

Dates of procedures:

If (A104<>null) Then

A104<DateOfToday

If (A110<>null) Then

A110<DateOfToday

If (A115[i]<>null) Then

A115[i]<DateOfToday

If (A120<>null) Then

A120<DateOfToday

Other:

If (A121<>null) Then

A121>=0 //A121 should be a positive Integer number

For (i=0; i<10; i++)

If (A94[i]<>null) Then

A95[i]<>null

Page 96: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 96 of 98

PART V – REFERENCES

This part provides references for the report. It contains a bibliography.

Page 97: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 97 of 98

BIBLIOGRAPHY

[1] "Official web-site of ELLECTRA-WeB in SourceForge.net", Sourceforge.net. http://sourceforge.net/projects/ellectra-web (last visited 2007).

[2] IBM, "WebSphere Studio Workbench". http://www-304.ibm.com/jct09002c/isv/websphere/workbench.html (last visited 2007).

[3] eclipse.org, "Eclipse platform". http://www.eclipse.org (last visited 2007).

[4] A. Bolour, "Notes on the Eclipse Plug-in Architecture", 2003. http://www.eclipse.org/articles/Article-Plug-in-architecture/plugin_architecture.html

[5] Eclipse.org, "Eclipse Modeling Framework Project (EMF)". http://www.eclipse.org/modeling/emf (last visited 2007).

[6] Eclipse.org, "Eclipse Java Development Tools (JDT)". http://www.eclipse.org/jdt (last visited 2007).

[7] Eclipse.org, "Plug-in Development Environment (PDE)". http://www.eclipse.org/pde (last visited 2007).

[8] J. Oldevik, T. Neple, R. Grønmo, J. Aagedal, and A.-J. Berre, "Toward Standardised Model to Text Transformations", vol. 3748/2005, SpringerLink, Lecture Notes in Computer Science (LNCS), 2005, ISBN: 978-3-540-30026-7.

[9] Eclipse.org, "Eclipse UML2 Project - Model Development Tools (MDT)". http://www.eclipse.org/modeling/mdt/?project=uml2 (last visited 2007).

[10] PAPYROUS, "PAPYROUS - Open Source Tool for Graphical UML2 Modelling". http://www.papyrusuml.org (last visited 2008).

[11] Eclipse.org, "OCL - Model Development Tools (MDT)". http://www.eclipse.org/modeling/mdt/?project=ocl#ocl (last visited 2007).

[12] Eclipse.org, "BPEL Project - Eclipse BPEL editor". http://www.eclipse.org/bpel (last visited 2008).

[13] IDABC, "IDABC guidelines, standards and Functional Requirements for eProcurement". http://europa.eu.int/idabc/en/document/4721/5874 (last visited 2007).

[14] Eclipse.org, "Web Tools Platform (WTP) Project". http://www.eclipse.org/webtools/main.php (last visited 2007).

[15] MODELWARE. http://www.modelware-ist.org (last visited 2007).

[16] MUSIC. http://www.ist-music.eu/MUSIC/tools-and-methods (last visited 2007).

[17] MADDAM. http://www.ist-madam.org (last visited 2007).

[18] ASSERT. http://www.assert-online.net (last visited 2007).

[19] OMG, "MOF Models to Text Transformation Language Final Adopted Specification", Object Management Group (OMG), Document, November 2006. www.omg.org/docs/ptc/06-11-01.pdf

[20] OMG, "MOF Query / Views / Transformations", Object Management Group (OMG), Document ptc/05-11-01, 2005. http://www.omg.org/cgi-bin/doc?ptc/2005-11-01

[21] G. K. Olsen and J. Oldevik, "Scenarios of Traceability in Model to Text Transformations", in Third European Conference on Model Driven Architecture Foundations and Applications (ECMDA'07). Haifa - Israel, 2007 (to appear).

[22] Tigris.org, "Subclipse - Open Source Software Engineering Tools". http://subclipse.tigris.org (last visited 2007).

[23] TEAM, "Tightening knowledge sharing in distributed software communities by applying semantic technologies". http://www.team-project.eu (last visited 2007).

[24] Tigris.org, "Subversion - Open Source Software Engineering Tools". http://subversion.tigris.org (last visited 2007).

[25] IDABC, "Software demonstrators for eProcurement". http://ec.europa.eu/idabc/en/document/3488/5874 (last visited

[26] Sun, "Enterprise JavaBeans Technology", Sun Microsystems. http://java.sun.com/products/ejb/ (last visited 2007).

[27] jboss.org, "JBoss - Application server". http://labs.jboss.com (last visited 2007).

Page 98: PART I – IDENTIFICATION SHEET - Joinup.eu · 0.7 23/04/2008 Completion of installation guide. ... 3.2.1 EJBCA Certificate ... Login page of the Sun Java System Application Server’s

Electronic Public Procurement Application Framework (1st release) ELLECTRA-WeB / Deliverable D10.1

ELLECTRA-WeB / 045153 12/05/2008

Copyright © ELLECTRA-WeB 2008 Page 98 of 98

[28] glassfish.dev.java.net, "Glassfish - Application server". https://glassfish.dev.java.net (last visited 2007).

[29] Sun, "Java Platform, Enterprise Edition (Java EE)", Sun Microsystems. http://java.sun.com/javaee/ (last visited 2007).

[30] MySQL AB, "MySQL". http://www.mysql.com/ (last visited 2007).

[31] apache.org, "Derby". http://db.apache.org/derby/ (last visited 2007).

[32] java.net, "Open ESB - The Open Enterprise Service Bus". https://open-esb.dev.java.net (last visited 2008).

[33] Active Endpoints, "ActiveBPEL". http://www.active-endpoints.com/active-bpel-engine-overview.htm (last visited 2007).

[34] OASIS, "OASIS Web Services Business Process Execution Language (WSBPEL) TC", OASIS. http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel (last visited 2007).

[35] Sourceforge.net, "Enterprise Java Bean Certificate Authotiry - EJBCA". http://ejbca.sourceforge.net (last visited 2008).

[36] wikipedia.org, "List of Java APIs". http://en.wikipedia.org/wiki/List_of_Java_APIs (last visited 2007).

[37] Sun, "JavaServer Pages Technology", Sun Microsystems. http://java.sun.com/products/jsp/ (last visited 2007).

[38] Sun, "JavaServer Faces Technology", Sun Microsystems. http://java.sun.com/javaee/javaserverfaces/ (last visited 2007).

[39] java.net, "JAX-WS". http://jax-ws.dev.java.net/ (last visited 2007).

[40] Sun, "Java Persistence API", Sun Microsystems. http://java.sun.com/javaee/technologies/persistence.jsp (last visited 2007).