End User License Agreement (EULA)

for the

Generalized Intelligent Framework for Tutoring (GIFT)

Generalized Intelligent Framework for Tutoring (GIFT) Version 2020-1 END-USER LICENSE AGREEMENT FOR ARMY RESEARCH LABORATORY (ARL) SOFTWARE

IMPORTANT-READ CAREFULLY: This ARL End-User License Agreement
("EULA") is a legal agreement between you (either an individual or a single entity) and ARL for the GIFT software accompanying this EULA, which includes reproducible computer software (source code) and may include associated media, printed materials, and "online" or electronic documentation ("SOFTWARE PRODUCT" or "SOFTWARE"). By exercising your rights to make and use copies of the SOFTWARE PRODUCT, you agree to be bound by the terms of this EULA. If you do not agree to the terms of this EULA, you may not use the SOFTWARE PRODUCT. The use of the term SOFTWARE PRODUCT does not refer to non-reproducible (binary), pre-compiled software, and data (e.g., surveys) which are distributed with GIFT and shall be referred to as DERIVATIVE WORKS.

The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. ARL makes no warrantees regarding the performance of this SOFWARE and you use it at your own risk. The SOFTWARE PRODUCT is licensed and may not be sold.

1. GRANT OF LICENSE. This EULA grants you the following rights:

- Installation and Use. You may install and use an unlimited number of copies of the SOFTWARE PRODUCT.
- Reproduction and Distribution. Public distributions separate from are prohibited. You may privately reproduce and distribute (e.g., via organizational intranet) an unlimited number of copies of the SOFTWARE PRODUCT for your use; provided that each copy satisfies the following requirements:

1) The copy shall be a true and complete copy

2) The copy shall include all copyright and trademark notices.

3) The end user shall view a copy of this EULA prior to access.

You may generate new DERIVATIVE WORKS using GIFT which belong to you and may be sold or distributed freely according to your organizational policies. DERIVATIVE WORKS of GIFT shall be branded according to the GIFT style guide, making clear that this adaptive training capability is a DERIVATIVE WORK of GIFT by displaying the following on the initial page (splash page) that displays the title of the DERIVATIVE WORK:

1) One of the approved GIFT logos (see to download approved logos) in a space that is a minimum of 350 pixels wide and maintains the aspect ratio of the original GIFT logo.

2) A link to

3) Text “Powered by GIFT” in a minimum 24 point font

See the section of this document titled “CLARIFICATIONS” for further explanations on the use of the SOFTWARE PRODUCT.


- Software Transfer. You may permanently transfer all of your rights under this EULA, provided the recipient agrees to the terms of this EULA.
- Termination. Without prejudice to any other rights, ARL may terminate this EULA if you fail to comply with the terms and conditions of this EULA. See the section of this document titled “CLARIFICATIONS” for additional terms and conditions. In such event, you must destroy all copies of the SOFTWARE PRODUCT and all of its component parts.

3. COPYRIGHT. All title and copyrights in and to the SOFTWARE PRODUCT 
(including but not limited to any images, photographs, animations, video, audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT), the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by ARL or its suppliers. The SOFTWARE PRODUCT is protected by copyright laws and international treaty provisions. Therefore, you must treat the SOFTWARE PRODUCT like any other copyrighted material. No copyright is claimed or enforced over “Domain content” (stored in the Domain folder of the default GIFT distribution). All users maintain copyright of any domain content they produce using this SOFTWARE PRODUCT, but have the option to share this content with the GIFT user community by providing content to ARL as outlined in SUBMISSION OF CHANGES TO GIFT section below.

4. SUBMISSION OF CHANGES TO GIFT. The growth of GIFT is based on the concept of community benefit and community development. Users of GIFT make up the GIFT community and benefit from investments in capabilities developed for GIFT. GIFT users may use GIFT components to author and/or analyze intelligent tutoring systems, their components, processes, models, modules or other functional elements. GIFT users are required to submit software changes to the GIFT architecture to ARL, free of licensing restrictions or fees, to be considered for incorporation in future GIFT baselines. See the section of this document titled “CLARIFICATIONS” for explanation of terms and conditions as to what constitutes a change to the GIFT architecture. Software changes should be provided via mail to: ARL-HRED-STTC, ATTN: LITE Lab - GIFT Changes, 12423 Research Parkway, Orlando, Florida 32826. Alternatively, changes can be made available in private form via web-based software sharing resources such as GitHub, SVN, SourceForge, or equivalent, with a notification sent by post or announced on

NO WARRANTIES. ARL expressly disclaims any warranty for the SOFTWARE PRODUCT. The SOFTWARE PRODUCT and any related documentation is provided "as is" without warranty of any kind, either express or implied, including, without limitation, the implied warranties or merchantability, fitness for a particular purpose, or noninfringement. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you.

NO LIABILITY FOR CONSEQUENTIAL DAMAGES. In no event shall ARL or its suppliers be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use this ARL product, even if ARL has been advised of the possibility of such damages.

This EULA is governed by U.S. Federal laws. Should you have any questions concerning this EULA, or if you desire to contact ARL for any reason, please contact the U.S. Army Research Laboratory through the website.


Clarifications for “Architectural Changes”:

An “architectural change” shall be defined as “a change to the operation of existing code provided in the GIFT distribution”. As an example, the addition of a new pedagogical request message from the Pedagogical Module, by changing the Pedagogical Module code, would be an architectural change. If in doubt, ask the two questions: “Were GIFT source code files modified?”. If they were modified to include additional software, “Is this software required to be compiled with GIFT, instead of as a library or binary utility?”. If the answers to either of those questions is “yes”, then an architectural change has been made, and the change should be communicated (see: SUBMISSION OF CHANGES TO GIFT).

Clarifications for Cases of Use:

1. “Can I create a tutor with GIFT and GIFT tools, and distribute or sell it?” By the terms of this agreement, yes. A tutor exported from GIFT may be distributed and sold. If the development of this tutor resulted in architectural changes to GIFT, the tutor and architectural changes, if any, should be submitted to ARL (see: SUBMISSION OF CHANGES TO GIFT). Additionally note that this is a DERIVATIVE WORK, and should be branded according to the GIFT style guide.

Example: A teacher has imported their content into GIFT, exports a tutor, and uses this DERIVATIVE WORK to deliver their training content. The content is owned by the content creator.

2. “Can I create a module in GIFT and sell it?” By the terms of this agreement, no. Creation of a new module is considered an architectural change to GIFT since it involves changes to existing code and must be compiled. As such this module should be submitted as a change (see: SUBMISSION OF CHANGES TO GIFT).

Example: A programmer has created a new pedagogical module based on Gagne’s 9 instructional events to replace the existing pedagogical module based on Merrill’s Component Display Theory. The new module conforms to the existing message set to receive and send information within the GIFT architecture, but changes the pedagogical function. The new module should be provided as an architectural change.

3. “Can I create a plug-in GIFT and sell it?” By the terms of this agreement, yes. Changes to the GIFT architecture required to make use of your plug-in should be submitted as a change (see: SUBMISSION OF CHANGES TO GIFT). This assumes that the plug-in runs as a separate software library (.dll, .so, .a, .dylib, etc.), rather than a native portion of a module.

Example: A software library to predict the next student state is integrated into the Learner Module, which uses its model to call predicted states every time it receives a state update. The software library is made available as a separate .dll file, linked during the program build. The ability to link the library should be provided as an architectural change, but the plug-in (library) may be distributed in a manner determined by the author.

4. “Can I sell architectural changes?” By the terms of this agreement, no. Architectural changes must be made available to the Army Research Laboratory (see: SUBMISSION OF CHANGES TO GIFT). After evaluation, ARL may integrate these changes in future versions of GIFT to benefit the community.

Example: all GIFT message passing has been changed to make use of REST interfaces to provide for a better web-based experience. These changes are due back to the ARL, free of licensing, who may choose to incorporate them in future releases.

5. “Can I sell an interface product that integrates GIFT with external systems ?” By the terms of this agreement, yes. If no architectural changes have been made to GIFT and the external system interoperates seamlessly with the GIFT system, then the interface it is not technically a part of GIFT, but is a DERIVATIVE WORK.

Example: a user already has an existing model of feedback in an existing training system and changes the training system to be directed by GIFT by inputting/outputting Domain Module compatible messages, effectively replacing the GIFT Domain Module. This training system is not a part of GIFT, and all rights to the training system and the interface are owned by their developers.

6. “Can I sell GIFT directly?” No, by the terms of the above agreement, the SOFTWARE PRODUCT can never be sold, but the output of GIFT (e.g., a tutor) may be sold as a DERIVATIVE WORK, within the constraints noted in this agreement.

7. “Can I post GIFT to my public development site on GitHub/SVN/SourceForge/etc.?” No, by the terms of the above agreement, GIFT can be made available publicly only through However, any user may redistribute GIFT within their own network, or using their own login-protected source control.