Idl 8.5.1

Not to be confused with Interface description language.

IDL 8.5: IDL-Python bridge. One of the major features of IDL 8.5 is the two-way bridge between IDL and Python. This allows Python functionality to be accessed from IDL (Python has a lot of libraries for things that fall outside of the standard scientific routines found in IDL) as well as accessing IDL functionality from Python (call legacy IDL. TDAS 12.1 + SPEDAS 4.1, Linux 64bit executable with IDL 8.5.1, CDF 3.7.1, Geopack 7.6 (70 MB) The Enhancement Lists for TDAS 12.1 + SPEDAS Version 4.1 can be found here. Installation on a Mac. Newer Mac OS X versions do not include the X11 libraries. XQuartz (X11) has to be downloaded and installed, or IDL will not work.

IDL (Interactive Data Language)
ParadigmVector Oriented Programming
DesignedbyDavid Stern
DeveloperDavid Stern & ITT Visual Information Solutions (ITT VIS)
Firstappeared1977
Stable release
Typing disciplineDynamic
Major implementations
IDL, GNU Data Language, Fawlty Language

IDL, short for Interactive Data Language, is a programming language used for data analysis. It is popular in particular areas of science, such as astronomy, atmospheric physics and medical imaging. IDL shares a common syntax with PV-Wave and originated from the same codebase, though the languages have subsequently diverged in detail. There are also two free implementations, GNU Data Language (GDL) and Fawlty Language (FL).

Overview

IDL is vectorized, numerical, and interactive, and is commonly used for interactive processing of large amounts of data (including image processing). The syntax includes many constructs from Fortran and some from C.

IDL originated from early VAX/VMS/Fortran, and its syntax still shows its heritage:

The findgen function in the above example returns a one-dimensional array of floating point numbers, with values equal to a series of integers starting at 0.

Note that the operation in the second line applies in a vectorized manner to the whole 100-element array created in the first line, analogous to the way general-purpose array programming languages (such as APL, J or K) would do it. This example contains a divide by zero; IDL will report an arithmetic overflow, and store a NaN value in the corresponding element of the y array (the first one), but the other array elements will be finite. The NaN is excluded from the visualization generated by the plot command.

As with most other array programming languages, IDL is very fast at doing vector operations (sometimes as fast as a well-coded custom loop in FORTRAN or C) but quite slow if elements need processing individually. Hence part of the art of using IDL (or any other array programming language, for that matter) for numerically heavy computations is to make use of the built-in vector operations.

History

The predecessor versions of IDL were developed in the 1970s at the Laboratory for Atmospheric and Space Physics (LASP) at the University of Colorado at Boulder. At LASP, David Stern was involved in efforts to allow scientists to test hypotheses without employing programmers to write or modify individual applications. The first program in the evolutionary chain to IDL that Stern developed was named Rufus; it was a simple vector-oriented calculator that ran on the PDP-12. It accepted two-letter codes that specified an arithmetic operation, the input registers to serve as operands, and the destination register. A version of Rufus developed on the PDP-8 was the Mars Mariner Spectrum Editor (MMED). MMED was used by LASP scientists to interpret data from Mariner 7 and Mariner 9. Later, Stern wrote a program named SOL, which also ran on the PDP-8. Unlike its predecessors, it was a true programming language with a FORTRAN-like syntax. SOL was an array-oriented language with some primitive graphics capabilities.

Stern left LASP to found Research Systems Inc. (RSI) in 1977. The first RSI product was IDL for the PDP-11. In this release, the graphics supported by IDL were primarily Tektronix terminals and raster graphics displays. RSI sold its first IDL licenses to NASA's Goddard Space Flight Center and Ball Aerospace & Technologies Corp. in 1979. Two years later RSI released an initial VAX/VMS version of IDL, which was written in VAX-11 MACRO and FORTRAN. It took advantage of the VAX virtual memory and 32-bit address space. The National Center for Atmospheric Research (NCAR), the University of Michigan, the University of Colorado, and the Naval Research Laboratory started to use IDL with this version.

In 1987 RSI shifted development work of IDL to the Unix environment, which required a complete re-write of the code in C rather than a port of the existing version of VAX IDL. Stern and Ali Bahrami rewrote IDL for Unix on the Sun 3, taking advantage of the re-write to extend and improve the language. Subsequently, IDL was further expanded and ported to several variants of Unix, VMS, Linux, Microsoft Windows (1992), and Mac OS (1994).

Widgets were added to IDL in 1992, providing event-driven programming with graphical user interfaces. In 1997 ION (IDL On the Net), a web server-based system, was commercially released. The first version of ENVI, an application for remote sensingmultispectral and hyperspectral image analysis written in IDL, was released in 1994. ENVI was created, developed and owned by Better Solutions Consulting, LLC, until it was purchased from BSC in October 2000 by Eastman Kodak coincident with their purchase of RSI. RSI sold, marketed and supported ENVI under the terms of a license agreement with BSC, LLC from 1994 through October, 2000. New object and pointer types, and limited object-oriented programming capabilities were added to IDL in 1997.

IDL has been applied widely in space science, for example in solar physics. The European Space Agency used IDL to process almost all of the pictures of Halley's Comet taken by the Giotto spacecraft. The team repairing the Hubble Space Telescope used IDL to help them diagnose anomalies in the main mirror. In 1995, astronauts on board a space shuttle used IDL loaded on a laptop to study ultraviolet radiation. Currently, amongst other applications, IDL is being used for most of the analysis of the SECCHI part of the STEREO mission at NRL, USA, and at the Rutherford Appleton Laboratory, UK.

RSI became a wholly owned subsidiary of ITT Industries in March 2004. As of May 15, 2006, RSI began doing business as ITT Visual Information Solutions. Effective 31 October 2011, as a result of restructuring, that company became Exelis Visual Information Solutions.

Features

As a computer language, IDL:

  • is dynamically typed.
  • has separate namespaces for variables, functions and procedures, but no namespace hierarchy.
  • was originally single threaded but now has many multi-threaded functions and procedures.
  • has all function arguments passed by reference; but see 'problems', below.
  • has named parameters called keywords which are passed by reference.
  • provides named parameter inheritance in nested routine calls, by reference or value.
  • does not require variables to be predeclared.
  • provides COMMON block declarations and system variables to share global values among routines.
  • provides a basic form of object-oriented programming, somewhat similar to Smalltalk, along with operator overloading.
  • implements a persistent, global heap of pointer and object variables, using reference counting for garbage collection.
  • compiles to an interpreted, stack-based intermediate p-code (à la Java Virtual Machine).
  • provides a simple and efficient index slice syntax to extract data from large arrays.
  • provides various integer sizes, as well as single and double precision floating point real and complex numbers.
  • provides composite data types such as character strings, homogeneous-type arrays, lists, hash tables, and simple (non-hierarchical) record structures of mixed data types.

Problems

Some of these features, which make IDL very simple to use interactively, also cause difficulties when building large programs. The single namespace is particularly problematic; for example, language updates that include new built-in functions have on occasion invalidated large scientific libraries.[1]

Arrays are passed by reference, and this mechanism is an advertised feature of the language to pass data back out of a subroutine — in contrast, array slices are copied before being passed, so that data modifications do not flow back into array ranges (after the subroutine exits), violating the principle of least surprise.

Many historical irregularities survive from the early heritage of the language, requiring individual workarounds by the programmer. As an example:

  • Array indexing and subroutine entry can both be carried out with exactly the same syntax (parentheses); this ambiguity, coupled with the single namespace for all variables and subroutines, can cause code to stop working when newly defined subroutines or language extensions conflict with local variable names. IDL programmers can avoid many of these problems by using square brackets for array indexing, thereby avoiding conflicts with function names which use parentheses.

The preceding issue can be alleviated using this compiler option:

  • ITT Visual Information Solutions (ITT VIS), the developers of IDL, have taken explicit steps to prevent bytecode compatibility with other environments. Files containing compiled routines use a binary tagged-data-structure format that has not been officially published but has been investigated and documented by users[2] but also contain the following notice as ASCII text embedded within each saved file: 'IDL Save/Restore files embody unpublished proprietary information about the IDL program. Reverse engineering of this file is therefore forbidden under the terms of the IDL End User License Agreement (IDL EULA). All IDL users are required to read and agree to the terms of the IDL EULA at the time that they install IDL. Software that reads or writes files in the IDL Save/Restore format must have a license from ITT Visual Information Solutions explicitly granting the right to do so. In this case, the license will be included with the software for your inspection. Please report software that does not have such a license to ITT Visual Information Solutions...' As of February 2010, the statement has not been tested in a court of law.

Also, that provision of the IDL EULA has no effect in Australia, as a result of sections 47D and 47H of that country's Copyright Act.

Examples

The following graphics were created with IDL (source code included):

  • Image of random data plus trend, with best-fit line and different smoothings
  • Plots of delta-o-18 against age and depth (from EPICA and Vostok)
  • coyote IDL gallery examples of IDL imaging

See also

  • ENVI - an image processing software package built in IDL
  • IRAF - a free, graphical data reduction environment produced by NOAO
  • MATLAB - a technical computing environment providing similar capabilities to IDL
  • Numpy - an extension for Python that gives it array math capabilities similar to those of IDL
  • Perl Data Language (PDL) - An extension to Perl that gives it array math capabilities similar to those of IDL
  • Solarsoft - library for solar data analysis and spacecraft operation activities written predominately in IDL
  • GDL - GNU Data Language, a free implementation similar to IDL.

References

  1. Fanning, David. 'Program Naming Conflicts in IDL 8'. Retrieved 30 September 2014.
  2. Markwardt, Craig (2011-12-21). 'Unofficial Format Specification of the IDL 'SAVE' File'. Retrieved 2013-02-13.

External links

Free
Proprietary
Public domain
Open-source
Freeware
Commercial
Cross-platform
  • IBM SPSS Statistics
  • IBM SPSS Modeler
  • World Programming System (WPS)
Windows only
Excel add-ons
  • UNISTAT for Excel
  • Category
Free
  • DicomIR
Proprietary
This article is issued from Wikipedia - version of the 12/3/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.

Terms and Conditions

This License Agreement (the “Agreement”) is entered into by and between International Dyslexia Learning Solutions Limited (‘IDL Solutions’), and an educational institution or other entity engaged in educational activity (the “Licensee”, “you” or “your”).

Pursuant to the terms and conditions herein, the Licensee seeks to rightfully obtain a license or licenses for itself and such concurrent users as may be agreed between IDL Solutions and the Licensee (“Authorised Users”) to use or evaluate the IDL Application (as defined below).

By downloading the IDL Application from this website OR clicking on the “accept” button below or otherwise using the IDL Application, or by permitting its Authorised Users to use the IDL application, the Licensee and its Authorised Users, as the case may be, signify that they unconditionally accept and agree to be bound by the terms and conditions of this Agreement. If the Licensee or an Authorised User does not accept the terms and conditions of this Agreement, the Licensee and the Authorised User, will desist from using or making any further use of the IDL Application.

1. Definitions and Interpretation

1.1 The following definitions will apply to the following terms used in this Agreement:

The terms ”Appropriate Safeguards, Data Portability, Restriction of Processing, controller, Consent, processor, personal data, data subject, personal data breach, data subject request, processing (including process, processed, processing and processes) and Supervisory Authority” have the meaning given to them in applicable Data Protection Legislation.

“Authorised Users” means students, and parents or guardians of students, who are enrolled in the Licensee’s educational institution or other entity engaged in educational activity, and teachers, instructors and administrators employed by the Licensee, in each case whom the Licensee has authorised to use the IDL Application pursuant to the terms and conditions of this Agreement.

“Data Protection” Complaint means a complaint or request (other than a Data Subject Request) relating to either party’s obligations under Data Protection Legislation relevant to this Agreement and/or the processing of any of the Shared Personal Data, including any compensation claim from a Data Subject or any notice, investigation or other action from a Supervisory Authority relating to the foregoing (and complainant means the Data Protection Supervisory Authority, Data Subject or other person initiating or conducting a Complaint);

“Data Protection Legislation” means all privacy and data protection laws as applicable and binding on a party, and includes where relevant, the UK Data Protection Act 2018 as amended, updated and re-enacted from time to time, the EC Directive on the protection of individuals with regard to the processing of personal data and on the free movement of such data, the General Data Protection Regulation (Regulation (EU) 2016/679) and all local laws or regulations giving effect to the Directive and Regulation (as any such legislation, directive or regulation may be amended, extended or re-enacted)

“IDL Application” means the product known as the IDL cloud application and any other specific proprietary products of IDL Solutions for which the Licensee has rightfully obtained a license or licenses which are accessible on and through the IDL Solutions websites on the World Wide Web or such other websites as IDL Solutions may designate from time to time, together with all IDL Solutions client applications related thereto. The term “IDL Application” may also include certain third party applications that are embedded within or provided by IDL Solutions together with such proprietary products of IDL Solutions.

“Shared Personal Data” means personal data received by the receiving party from or on behalf of the disclosing party, or otherwise made available by the disclosing party for the purpose of using and providing the licensed IDL application and related services.

“Subject Access Request” means a request made by a Data Subject under the Data Protection Legislation to have confirmation as to whether or not their personal data is being Processed, and where that is the case, to be granted access to that personal data and given information about the Processing.

“Technical and Organisational Measures” means those security measures (including risk analysis, organisational policies, and physical and technical measures implemented to protect personal data from misuse or loss, according to the requirements of the Data Protection Legislation and further descried in clause 4.6.

1.2 In this Agreement:

1.2.1 words importing the singular include the plural and vice versa, words importing a gender include every gender;
1.2.2 references to any statutory provisions shall be construed as references to those provisions as respectively replaced or amended or re-enacted from time to time; and
1.2.3 whenever the words ‘include’, ‘includes’, ‘including’, ‘in particular’ or any similar words and expressions are used, they shall be deemed to be followed by the words ‘without limitation’.
1.2.4 a reference to any EU action, remedy, method of judicial proceeding, court, official, legal document, legal status, legal doctrine, legal concept or thing shall, where no longer applicable after Brexit, be deemed a reference to that which most nearly approximates it under the Law of England and Wales;
1.2.5 any obligation on any party not to do or omit to do anything is to include an obligation not to allow that thing to be done or omitted to be done;
1.2.6 A reference to ‘writing’ or ‘written’ includes email.

2. License Grant.

2.1 In consideration of the payment by you of the agreed licence fee and the retainer fee and you agreeing to, and procuring that each Authorised User agrees to, abide by the terms of this Licence, IDL Solutions hereby grants to you a non-exclusive, non-transferable licence to use the IDL Application and any related documentation on the terms of this Agreement.

3. License Obligations and Restrictions

3.1 You will only use, and will procure that the Authorised Users only uses, the IDL Application to the extent that you have rightfully obtained the requisite number of licenses or subscriptions for such use. You and any Authorised User will only use the IDL Application for your internal educational uses. You and any Authorised User may only use any third party applications that are embedded within or provided by IDL Solutions together with the IDL Application solely as integrated with, and for running and extracting data from, the IDL Application. Without limitation, you and any Authorised User will not use any such applications as stand-alone applications.

3.2 Only you and your Authorised Users are permitted to use the IDL Application. You will ensure that all use by Authorised Users of the IDL Application will be pursuant to the terms and conditions of this Agreement.

3.3 You undertake that you will not and you will procure that your Authorised Users will not:

Idl

3.3.1 rent, lease, sub-license, loan, translate, merge, adapt, vary, alter or modify, the whole or any part of the IDL Application or related documentation nor permit the IDL Application or any part of it to be combined with, or become incorporated in, any other programs;

3.3.2 copy any portion of the IDL Application, unless expressly permitted under this Agreement. Upon our request, you may be required to provide written confirmation that, to the best of your knowledge, the IDL Application has not been copied in any manner not expressly permitted under this Agreement;

3.3.3 use the IDL Application or any portion thereof in or as a time-sharing, outsourcing, service bureau, application service provider or managed service provider environment;

3.3.4 disclose any part of the IDL Application to any third party, unless expressly permitted under this Agreement;

3.3.5 change, modify, disassemble, decompile, “unlock,” reverse engineer or in any manner decode the IDL Application.

3.4 To the extent applicable, you will comply with all export laws and regulations. Under no circumstances will the IDL Application be made available contrary to the Licensee’s country’s export laws or regulations.

4. Data Protection

4.1 Both parties will comply with all applicable requirements of the Data Protection Legislation. This clause 4 is in addition to, and does not relieve, remove or replace, a party’s obligations under the Data Protection Legislation.

4.2 To the extent that you use the IDL Application to store or process personal data, you acknowledge that for the purposes of the Data Protection Legislation, you are a controller of personal data and that IDL Solutions will be the processor and, in some cases, the controller of the personal data depending on the License services provided under this Agreement.

4.3 IDL Solutions as a Processor

4.3.1 Where IDL Solutions processes personal data as a processor, the following provisions shall apply:

a) IDL Solutions will only process personal data in accordance with your documented instructions, unless required to process such personal data for other purposes by applicable laws or regulatory authorities. In such circumstances, IDL Solutions shall provide you notice, unless the relevant law or regulatory authority prohibits the giving of notice. If IDL Solutions believes that any instruction received by it from you is likely to infringe Data Protection Legislation, IDL Solutions shall be entitled to cease to provide the relevant application and related services until we have agreed appropriate amended instructions which are not infringing.

b) On your written request, IDL Solutions shall, in fulfillment of its obligation to provide information to demonstrate compliance with Data Protection Legislation, make available to you such documentary information as you reasonably request from time to time to demonstrate such compliance, including data relevant to our processing of personal data as part of the License and related services. IDL Solutions will, at your cost, allow for and contribute to audits, including inspections, by you (or another auditor mandated by you) for this purpose (subject to a maximum of one audit request in any 12-month period under this subclause.

c) You shall provide a general authorisation to IDL Solutions to engage sub-processors to process personal data upon and subject to the remaining provisions of this agreement. IDL Solutions will inform you of any intended changes concerning the addition or replacement of other sub-processor, giving you the opportunity to object to such changes. IDL Solutions shall appoint each sub-processor under a written contract containing materially the same obligations data protection obligations as under this Agreement.

d) IDL Solutions shall not permit any processing of personal data by any person not subject to a duty of confidence.

e) You warrant and represent to IDL Solutions that you are the controller of the personal data you share with us and that and that you have all necessary consents and notices in place in order to enable lawful transfer of personal data to IDL Solutions and permit IDL Solutions to process the personal data in accordance with and for the purposes contemplated pursuant to this agreement and that you have otherwise complied with and continue to comply with all applicable laws, enactments, regulations, orders, standards and other similar instruments relating to the collection and processing of personal data. Schedule 1 sets out the scope, nature, and purpose of processing by IDL Solutions.

f) IDL Solutions will notify you immediately if IDL Solutions becomes aware of or reasonably suspects a personal data breach.

4.4 IDL Solutions as a Controller

a) Each party shall be a controller of the Shared Personal Data. The Shared Personal Data shall be shared and managed in accordance with the terms of this subclause.

b) The party disclosing the Shared Personal Data (‘Disclosing party’) to the other the party (‘Receiving Party’) shall always ensure that:

i. all Shared Personal Data transferred to the Receiving Party is accurate and up-to-date and always has been collected, processed, and transferred by and on behalf of the Disclosing Party in accordance with Data Protection Legislation;

ii. each relevant Data Subject has been provided with sufficient information (in an appropriate form) so as to enable fair, transparent and lawful processing (including sharing) of the Shared Personal Data in accordance with the obligations of each party under Data Protection Legislation;

iii. it is entitled to transfer, and the Receiving Party is entitled to process all Shared Personal Data in accordance with Data Protection Legislation;

iv. the Shared Personal Data is transferred to (and received by) the Receiving Party in a secure manner using appropriate technical and organisational security measures that comply with the obligations of each party under Data Protection Legislation;

v. it shall immediately notify the Receiving Party if it becomes aware of any change or circumstance which will, may or is alleged to impact the lawfulness of any processing of the Shared Personal Data by the Receiving Party (including if a data subject withdraws any necessary Consent or requests their Shared Personal Data is no longer processed or is erased or if any of the Shared Personal Data is not accurate or up-to-date), together with full details of the circumstances and (immediately once available) revised and corrected data;

vi. it shall not by any act or omission cause the Receiving Party (or any other person) to be in breach of any Data Protection Legislation;

vii. it shall keep copies of all notices, Consents or other records and information necessary to demonstrate its compliance with this subclause.

c) The Disclosing Party remains responsible for any data subject request and any Complaint received in relation to the Shared Personal Data.

d) The Receiving Party shall immediately notify the Disclosing Party, in writing, if it receives any Complaint, notice or communication which relates to the processing of the personal data it received, and provide Disclosing Party with such data and co-operation as the Disclosing Party reasonably requires in relation to the matter. The Receiving Party will provide all necessary assistance and information to the Disclosing Party to enable it to respond in accordance with the Data Protection Legislation and within any timeframe specified in it, or, in the case of a communication from the ICO, or other Supervisory Authority or regulator, the timeframe specified in the communication. The Receiving Party’s obligations under this subclause shall be performed at the Disclosing Party’s expense, except to the extent that the circumstances giving rise to such obligation arose out of any breach by the Receiving Party of its obligations under this Agreement

e) The Disclosing Party shall indemnify and keep indemnified the Receiving Party against:

i. all losses, claims, damages, liabilities, fines, sanctions, interest, penalties, costs, charges, expenses, compensation paid to Data Subjects (including compensation to protect goodwill and ex gratia payments), demands and legal and other professional costs (calculated on a full indemnity basis and in each case whether or not arising from any investigation by, or imposed by, a Data Protection Supervisory Authority) arising out of or in connection with any breach by the Disclosing Party of its obligations under this subclause; and

ii. all amounts paid or payable by the Receiving Party to a third party which would not have been paid or payable if the Disclosing Party’s breach of this subclause had not occurred.

f) Except as required by applicable legislation in the United Kingdom, the Receiving Party shall cease to process and confidentially and securely destroy or dispose of all Shared Personal Data (and all copies) in its possession or control on termination or expiry of this Agreement.

g) The provisions of this subclause shall survive termination or expiry of this Agreement.

4.5 Personal Data Transfers

4.5.1 IDL Solutions:

a) uses Eventbrite for booking training and events which has its servers based in the USA. Eventbrite is privacy shield registered so has appropriate data protection safeguards in place, you hereby consent that we may transfer the personal data to these organisations to the extent that is reasonably necessary in order to fulfil our contractual obligations;

Idl 8.5.1

b) will not transfer your personal data outside of the European Economic Area (EEA) unless:

i. IDL Solutions has obtained your prior written consent;

ii. Appropriate Safeguards have been put in place in relation to the transfer;

iii. the data subjects whose personal data will be transferred have enforceable rights and effective legal remedies; and

iv. IDL Solutions can provide an adequate level of protection to any personal data that is transferred.

4.6 Technical and Organisational Measures

4.6.1 IDL Solutions will put in place appropriate Technical and Organisational Measures to:

a) protect against unauthorised or unlawful processing of personal data and against accidental loss or destruction of, or damage to, the personal data; and

b) allow you to meet your obligations to data subjects, including but not limited to:

i. rectification or erasure of personal data;

Idl 8.5.1

ii. restriction of processing of personal data;

iii. Data Portability; and

iv. prompt response to subject access requests.

4.6.2 IDL Solutions will obtain a commitment of confidentiality from anyone it allows to process personal data, including but not limited to:

a) IDL Solution’s employees, agents, officers and affiliates;

b) Agency or temporary workers; or

c) Sub-contractors or Sub-Processors.

4.6.3 Both parties will assist each other, so far as possible and taking into account the nature of the processing under this Agreement and the information available to IDL Solutions, in meeting obligations under the Data Protection Legislation, including but not limited to:

a) the obligation to keep personal data secure;

b) the obligation to notify personal data breaches to the Supervisory Authority;

c) the obligation to advise data subjects where there has been a personal data breach;

d) the obligation to carry out data protection impact assessments; and

e) the obligation to consult with the Supervisory Authority where a data protection impact assessment indicates an unmitigated high risk to the processing activities under this Agreement.

4.7 Data Breaches

4.7.1 Each party must have a clear policy and procedure regarding the reporting and handling of data protection breaches or data loss incidents.

4.7.2 IDL Solutions will be responsible for data breaches occurring on its application server and for reporting those breaches to the relevant Supervisory Authority and, where applicable the Disclosing Party and/or controller, and subsequent management.

4.7.3 A party is responsible for managing a data breach in its own domain or on its IT Systems.

4.7.4 In the event of a data breach, the responsible controller or party should implement further control measures to reduce the risk or prevent a further breach and shall promptly (and in any event within 24 hours) notify the other party of any personal data breach in respect of any Shared Personal Data and the other party shall provide all such assistance and information as the reporting controller or party may reasonably require.

4.8 Destruction or Return

4.8.1 On termination or expiry of this Agreement IDL Solutions shall, at your choice, destroy or return all personal data and copies thereof it has within its power, ownership, or control.

4.8.2 IDL Solutions shall confidentially, irrecoverably, and securely destroy or dispose of all personal data (and all copies) in its possession or control that it can no longer process in accordance with this Agreement and/or Data protection Legislation.

5. Intellectual Property Rights

5.1 IDL Solutions and its licensors reserve all right, title and interest in and to the IDL Application not expressly granted to you hereunder. Without limitation, all third party licensors and suppliers retain all right, title and interest in third party software and all copies thereof, including all copyright and intellectual property rights. All trademarks and service marks contained in or on or associated with the IDL Application are the trademarks, services marks, registered trademarks or registered service marks of IDL Solutions or its licensors, as applicable.

5.2 You acknowledge and agree that you have no right of access to the IDL Application in source code form.

6. Term and Termination

6.1 This Agreement will remain in full force and effect for the rightfully obtained license or subscription period unless terminated earlier.

6.2 You may terminate this Agreement at any time; provided however that IDL Solutions will not refund any license, retainer, subscription or order fees, or any portion thereof, unless IDL Solutions agrees to do so in writing and such termination occurs within the first 7 days of activation of your licence.

6.3 IDL Solutions may, without prejudice to any other rights or remedies of IDL Solutions, terminate this Agreement on written notice to you if you breach any provision of this Agreement or fail to make any payment to IDL Solutions as and when due. IDL Solutions may also by written notice require you to rescind the Authorised User’s authorisation to use the IDL Application if the Authorised User breaches any provision of this Agreement.

6.4 Upon termination of this Agreement for any reason, the license granted to you under this Agreement will terminate, and you and all Authorised Users must immediately cease using the IDL Application and immediately destroy all copies of the IDL Application and any portion thereof in your or your Authorised Users’ possession.

6.5 All provisions of this Agreement which by their express terms or nature are intended to survive will survive the termination of this Agreement.

7. General Disclaimers

7.1 This Agreement sets out the full extent of IDL Solutions’ obligations and liabilities in respect of the supply of the IDL Application. You assume all responsibility and risk for your use, and the use by Authorised Users, of the IDL Application. The IDL Application is supplied “as is” and “as available,” and IDL Solutions makes no representations about the accuracy, reliability, completeness, or timeliness of the information contained in the IDL Application.

7.2 IDL Solutions does not guarantee that any particular result will be obtained from use of the IDL Application. Except as expressly stated in this Agreement, IDL Solutions disclaims, to the extent permitted by law, all warranties, express or implied, including the warranties of merchantability, accuracy, non-infringement and fitness for a particular purpose. Any condition, warranty, representation or other term concerning the supply of the IDL Application which might otherwise be implied into, or incorporated in, this Agreement whether by statute, common law or otherwise, is excluded to the fullest extent permitted by law.

7.3 You agree and acknowledge that the IDL Solutions website may from time to time be unavailable due to scheduled downtime, reasonable needs for maintenance, reasonable periods of failure of equipment, computer programs or communications, or events beyond the control of IDL Solutions. IDL Solutions makes no representations, warranties or covenants with respect to the availability of the IDL Solutions website or web servers.

8. Limitation of Liability

8.1 You acknowledge and agree that the IDL Application has not been developed to meet your individual requirements, and that it is your responsibility to ensure that the facilities and functions of the IDL Application, as described in the related documentation provided by IDL Solutions, meet your requirements.

8.2 In no event will IDL Solutions or its affiliates, officers, directors, or suppliers be liable to you, whether in contract, tort (including negligence), breach of statutory duty, or otherwise arising under or in connection with this Agreement for: loss of profits, sales, business or revenue, loss of or corruption of data, loss of goodwill or reputation, or any failure of performance, error, omission, defect, deletion, delay, or business interruption or any incidental or consequential damages.

Idl 8 5 License

8.3 In no circumstances shall IDL Solutions or its affiliates, officers, directors, or suppliers be liable to the Authorised User for any claims, damages, liability, costs or expenses of any nature whatsoever, whether based on warranty, contract, tort, strict liability or any other legal theory, and whether or not IDL Solutions is advised of the possibility of such damages, or for any damages in excess of the license or subscription fees received by IDL Solutions for the product or service complained of in the previous 12-month period.

8.4 Other than the losses set out in clause 8.3 (for which we are not liable), our maximum aggregate liability under or in connection with this Agreement whether in contract, tort (including negligence) or otherwise, will in all circumstances be limited to a sum equal to the licence fee. This maximum cap does not apply to clause 8.5.

8.5 Nothing in this Licence will limit or exclude IDL Solutions’ liability for:

8.5.1 death or personal injury resulting from its negligence;

8.5.2 fraud or fraudulent misrepresentation;

8.5.3 any other liability that cannot be excluded or limited by English law.

Idl 8.5

9. Severability

Should any term (or part of any term) of this Agreement be declared illegal, void or unenforceable in any respect, such declaration will have no effect on the remaining terms of this Agreement and that term (or part term) will be deemed deleted.

10. No Waiver

Any delay or failure of either party to enforce any rights granted hereunder or to take action against the other party under or in connection with this Agreement will not limit or restrict the future exercise or enforceability of those rights.

11. Entire Agreement

11.1 The provisions of this Agreement constitute the entire agreement between the parties with respect to the subject matter hereof and supersede any and all prior or contemporaneous agreements, oral or written, and all other communications relating to the subject matter hereof.

8.4

11.2 No amendment or modification of any provision of this Agreement will be effective unless set forth in a document that expressly amends this Agreement signed by authorised representatives of both parties. In the event that the terms and conditions of any purchase order conflict with or are in addition to the terms and conditions of this Agreement, the conflicting and additional terms and conditions of the purchase order will be void and of no effect and the terms and conditions of this Agreement will prevail, unless an authorised representative of IDL Solutions expressly agrees otherwise in writing.

12. Governing law and jurisdiction

12.1 This Agreement and any dispute or non-contractual obligation arising out of or in connection with it will be governed by, and construed in accordance with the laws of England.

12.2 You and IDL Solutions each irrevocably agrees that the courts of England will have exclusive jurisdiction to settle any dispute arising out of or in connection with this Agreement.

Schedule 1

Processing by IDL Solutions

Scope of the processing

This will encompass receiving the personal data from the IDL Application, storing, organising, or otherwise filing the personal data to enable the full functionality of the IDL Application and assist you in delivering assistance to the Data Subject.

The Nature of the processing

The collection, storage, organised filing, retrieval, use, disclosure by transmission, alignment, and combination of the personal data. IT, digital, technology or telecom services, including use or provision of technology products or services, telecoms and network services, digital services, hosting, cloud and support services or software.

The personal data was collected and will be processed for the following Education, including the provision of education or training as a primary function or as a business activity.

Purpose: of the processing

Provide and support the IDL Application, Support the Data Subject, you, and your tutors, Provide products and services to you, Process payments, Provide you with information about your contract with us, Verify the identity of you, your staff, and the Data Subjects, Deal with any complaints, Contact you about any changes that we make to our products or services, Administer the IDL Application, including troubleshooting problems, analysing statistics, conducting research and tests, and keeping the IDL Application secure.

Collect, use, and share Aggregated Data such as statistical or demographic data for any purpose. Aggregated Data may be derived from the Personal Data but is not considered personal data in law as this data does not directly or indirectly reveal the identity of the Data Subject. For example, we may aggregate data to calculate the progress of learners generally and the percentage of learners achieving a particular achievement within the IDL Application

Types of Personal Data

full name, date of birth, age, gender, username or similar identifier, postal address, email address and telephone number, internet protocol (IP) address, login data, device type and software version, browser type and version, time zone setting and location, browser plug-in types and versions, operating system and platform and other technology on the devices you use to access the IDL Application.

Categories of Data Subject

the administrator, i.e. the teacher or special needs educational co-ordinator, as the case maybe. Customers and clients (including their staff), learners, students, and pupils

Duration of the Processing

30 days after expiration or termination of the Agreement.