-   Sign In 
              -   Create Account 

### U.S. Department of Energy                                        Office of Scientific and Technical Information

      to      

 More Options...                        

-   Sign In 
-   Create Account 

Advanced Search
                  -   Submit Software/Code                                             
                  -   Repository Service                                             
                  -   Software Policy 
                  -   Resources                                             
                  -   About                                             
                  -   FAQs                                             
                  -   News                                             

# FAQs

## General FAQs

          -                      What is DOE CODE?                 
          -                      How is the DOE CODE software submission and search tool different from                   DOE CODE GitLab ? 
          -  What does DOE CODE contain? 
          -  Is DOE CODE connected to Code.gov? 
          -  Does DOE CODE provide repository services? 
          -  What are the Project Types found in DOE CODE? 
          -  Why is uploading code required for certain Project Types? 
          -  Are there restrictions on the use of the material in DOE CODE? 
          -  How do I access the code/software from DOE CODE records? 

## Submission FAQs

          -  How is scientific software provided to DOE CODE? 
          -  What does it mean to submit scientific software to DOE CODE? 
          -  What does it mean to announce scientific software to DOE CODE? 
          -  How is business software provided to DOE CODE? 
          -  What does it mean to submit business software to DOE CODE? 
          -  What does it mean to announce business software to DOE CODE? 
          -  Is a license required when providing software to DOE CODE? 
          -  What is a landing page? 
          -  Can I add a new or previous version of software I have previously submitted or announced to DOE CODE? 
          -  Can I submit a tagged release as an individual record to DOE CODE? 
          -  Can I see the status and availability of my submitted/announced records? 
          -  Does DOE CODE archive software? 
          -  Does DOE CODE support the upload of container images as part of the submission/announcement process? 
          -  What is an access limitation? 
          -  How do I announce software with an access limitation, such as Controlled Unclassified Information (CUI), to OSTI? 
          -  What if I need to change the access limitation of a project? 
          -  What is a YAML file? How do I auto populate the YAML file? 
          -  Do I need an account to use DOE CODE? 
          -  What is a Digital Object Identifier (DOI)? 
          -  What are the benefits of getting a DOI for code or software? 
          -  What if I need to have a project removed from DOE CODE? 

## Search FAQs

          -  How do I search DOE CODE? 
          -  How do I use the Advanced Search? 
          -  What information is found on the Full Project page in DOE Code? 
          -  Can I sort or refine my results? 
          -  Can I save or download the results of a search? 
          -  Are there APIs available for DOE CODE? 
          -  Do I need to have cookies enabled to use DOE CODE? 
          -  What if I have more questions? 

## General FAQs

### What is DOE CODE?

> 
                    DOE CODE is the U.S. Department of Energy's (DOE) software services platform and search tool for software resulting from DOE-funded research that                     provides functionality for collaboration, archiving, and discovery of scientific and business software funded by DOE. DOE CODE was initially developed                    as an open source project. The archived version is available on GitHub.                     Throughout these FAQs, the terms "software" and "code" are used interchangeably, though it is understood there are discrete definitions in various communities.                

###                 How is the DOE CODE software submission and search tool different from                 DOE CODE GitLab?

> 
                DOE OSTI is charged with fulfilling the Department's responsibilities to collect, preserve, and disseminate scientific and technical information (STI),                 including software, emanating from DOE research and development activities. DOE CODE is a platform for the submission or announcement and search of software                 resulting from DOE-funded research. DOE national laboratories, DOE facilities, and DOE contractors who have developed and/or modified software during work                 supported by DOE or during work carried out for others at DOE facilities are required to announce software to DOE using DOE CODE.                                The DOE CODE GitLab instance is a repository option available                 to DOE-funded developers. Registered users can create and import their own repositories. This service is provided to the DOE community for free by OSTI. The                 repository service can be helpful when developers need controlled access to code (e.g. not open source or not yet public), or for collaboration between                 developers from multiple labs or institutions.                                Users may request to join the DOE CODE GitLab community by completing the                 DOE CODE Repository Service Access Request.                                The DOE CODE repository service is a development option that is separate from the submission and formal announcement processes of software/code to OSTI                 through DOE CODE.                

### What does DOE CODE contain?

> 
                    DOE CODE contains records for DOE-funded scientific and business software with unlimited availability.                     DOE CODE links to the software, code repository, or project contact information. The repositories may also include manuals, examples, test data, etc.                

### Is DOE CODE connected to Code.gov?

> 
                    To fulfill Departmental requirements to maintain an inventory of all DOE-funded custom-developed software and report this inventory to the                     government-wide Code.gov website, metadata for all scientific and non-scientific (e.g., business) software should be provided to DOE CODE.                     This inventory will foster scientific progress, provide transparency to and promote public understanding and use of DOE-funded open source software (OSS),                     and enable DOE to fulfill requirements for government-wide reporting of custom-developed software to Code.gov.                

### Does DOE CODE provide repository services?

> 
                    Yes. DOE CODE provides a repository hosting service for the DOE community via                     GitLab. The DOE CODE GitLab can accommodate open or closed repositories for unlimited availability software, and allow for more control of the code.                                        If you choose to host your code using the DOE CODE GitLab instance, you will still need to separately submit or announce your project using the DOE CODE submission form.                                        If you are interested in using the DOE CODE GitLab repository service, please complete the                     DOE CODE Repository Service Access Request. For any questions about the repository service, please contact doecoderepositories@osti.gov.                

### What are the Project Types found in DOE CODE?

> **Open Source, Publicly Available Repository (OS-PAR)** - Software can be freely accessed, used, changed and shared                    (in modified or unmodified form) by anyone in a public repository. Open Source software is made by many people and distributed                    under licenses that comply with the Open Source definition.                    Visit the Open Source Initiative                    for more information and definitions. A Repository URL, where the source code is available, is required for providing Open Source,                     Publicly Available Repository code.                    **Open Source, No Publicly Available Repository (OS-NPAR)** - Software is Open Source but is not yet available in a public repository.                     Interested users can contact the developer(s) or responsible parties for information regarding access and (re)use.                     A landing page URL is required for providing Open Source, no Publicly Available Repository code; the URL should provide additional information on how                     to obtain access to the code. When announcing codes of this Project Type, uploading the source code is required. This requirement is for preservation                     purposes only, i.e., not for distribution by OSTI.                    **Closed Source (CS)** - Software is not Open Source, and access must be granted by contacting a licensing official.                     Software is often Closed Source because it is proprietary or has otherwise been deemed appropriate for limited distribution only.                     A landing page URL or contact email is required when providing Closed Source code; the URL should provide additional information on how to                     obtain access to the code. If providing a contact email address, we recommend using a general software group email for your site if available.                

### Why is uploading code required for certain Project Types?

> 
                    The source code is required for announcing codes with Project Types OS-NPAR and CS. For Project Type CS, compiled binary may be provided                     only if the code is not available. The code is required for preservation purposes only, i.e., not for distribution by OSTI. (See also                     "What are the Project Types found in DOE CODE?", "What does it mean to                     submit                     / announce                     scientific software to DOE CODE?", and "What does it mean to                     submit                     / announce                    business software to DOE CODE?")                

### Are there restrictions on the use of the material in DOE CODE?

> 
There may be restrictions on use of the material based on the associated license(s). Currently, DOE CODE supports the following list of Open Source licenses:
-  Apache License 2.0 
-  GNU General Public License v3.0 
-  MIT License 
-  BSD 2-clause "simplified" License 
-  BSD 3-clause "New" or "Revised" License 
-  Eclipse Public License 1.0 
-  GNU Affero General Public License v3.0 
-  GNU General Public License v2.0 
-  GNU General Public License v1.0 
-  GNU Lesser General Public License v2.1 
-  GNU Lesser General Public License v3.0 
-  Mozilla Public License 2.0 
-  The Unlicense 
                        More information regarding these licenses can also be found at the                        Open Source Initiative - Licenses by Name.                                                If you choose to use a license not in the above list, you may select "Other" and provide a URL to the landing page of the license.                    

### How do I access the code/software from DOE CODE records?

> 
                    DOE CODE does not directly disseminate software projects. Access to the software/code is provided by the originating site.                     From the DOE CODE software record page, OSTI provides a link directly to a landing page or repository depending on the project type,                     or provides the contact email for users to reach out to the developer or developing organization to request access to the software.                

## Submission FAQs

### How is scientific software provided to DOE CODE?

> 
                    Individual software records and associated metadata are directly provided by the developer or the developing organization to DOE through DOE CODE.                     When an individual software record is associated with a DOE national laboratory, the laboratory points of contact will be notified of the record                     submission or announcement.                

                    When providing software to DOE CODE, users will first need to identify what type of software they are providing - scientific or business software.                     Users who are unsure of the type of software are encouraged to work with their site's                     software point of contact.                

                    In cases where a Repository URL from which OSTI can access and archive software is not available, the software itself (an uploaded source code file)                     should be submitted to OSTI along with associated metadata. For submission of limited availability software, an access limitation and information                     pertaining to the limitation (such as OUO exemption number) must be provided upon submission.                
**Providing Scientific Software to DOE CODE**
                    DOE CODE offers two paths for users to provide scientific software. Users can (1) submit code to DOE CODE, and/or (2) announce code                    to the Department of Energy for official review and release through DOE CODE. For more information about submitting and announcing                    code, see the                    "What does it mean to submit scientific software to DOE CODE?"                    ,                    "What does it mean to announce scientific software to DOE CODE?"                    and Help.                

### What does it mean to submit scientific software to DOE CODE?

> 
                        Submission of scientific software to DOE CODE is for code in early development, which can be shared with unlimited distribution only,                         and for those who wish to obtain a DOI early in the process. (See also "What is a Digital Object Identifier (DOI)?")                         Software that has an access limitation (OUO, CUI, etc.) cannot be provided via the submission process;                         it must go through the DOE CODE announcement process. Submitting scientific code to DOE CODE is easy, with only a minimal set of metadata required.                    
                        Requirements to Submit Scientific Software to DOE CODE:                        - Project Type
- Repository URL;* Landing Page;** Contact Email**
- Software Title
- Description/Abstract
- License(s)***
- Developers

                        *Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and GitLab                        support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to the actual                        repository. As an example, the direct Repository URL for DOE CODE is                         https://www.github.com/doecode/doecode                        whereas the project landing page is                         https://www.github.com/doecode.                         Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub.                         As an example, the tagged release URL                         https://github.com/doecode/server/releases/tag/v2.0.1                         can be submitted as a valid Repository URL to DOE CODE.                    

                        **A landing page or valid contact email address is required when submitting or announcing Closed Source code.                         This page should provide additional information on how to obtain access to the code. For more information on landing pages,                         please see FAQ "What is a landing page?".                         If providing a contact email address, we recommend using a general software group email for your site if available.                    

                        ***For Closed Source software, you will be required to provide a License URL, in which valid contact information is available on the page                         OR provide a valid contact email address.                    

### What does it mean to announce scientific software to DOE CODE?

> 
                        Users may need to announce their scientific code to the Department of Energy to ensure announcement and dissemination in accordance with DOE                         statutory responsibilities. The announcement process is for code in later stages of development that has completed internal review and release                         processes. For announcement to the Department of Energy, there are basic requirements for metadata fields; however,                         other optional/non-mandatory data fields should be included during announcement when possible. For more detail,                         see Announcing Software to DOE CODE flowchart.                    
                        DOE national laboratories, DOE facilities, and DOE contractors who have developed and/or modified software during work supported by DOE or                         during work carried out for others at DOE facilities are required to announce a record of the software to the Department of Energy,                         if the software meets the following criteria:                        - the software meets the definition of  STI ;
- the software is known or expected to be useful inside or outside the DOE community, or is not specific to the originating site;
- a stable, usable, documented version of the software exists (i.e., the software is not under initial development); and
- the software has undergone all appropriate reviews for sensitivity and export control.
                        Scientific software that meets the following criteria need not be announced to the Department of Energy:                        -                                 operational systems software that is site-specific, unique to a hardware, or necessary to ensure the fundamental                                operability of automated data processing equipment, whether supplied by the manufacturer of the system hardware or others;                            
-                                 computer software programs developed and/or modified during work carried out for others at DOE facilities that are                                specifically excluded in the agreement under which the non-DOE funded work was performed;                            
-                                 software generated under the auspices of the Energy Information Administration; and                            
-                                 specific software used by power administrations for the operation, control, planning, and modeling of electric power                                transmission systems and the interconnected utilities; however, modifications/enhancements to portions of this software                                that are not an integral part of the whole and have potential application outside the power administrations should be                                announced.                            
                        Requirements to Announce Scientific Software to the Department of Energy through DOE CODE:- Project Type
- Repository URL;* Landing Page;** Contact Email**
- Software Title
- Description/Abstract
- License(s)***
- Release Date
- Access Limitation****
- Developers
- Source Code or Compiled Binary*****
- Sponsoring Organization Name
- Primary Award Number
- Research Organization Name
- Contact Information

                        In addition to the basic requirements for metadata fields (above), other optional/non-mandatory data fields should be included                        during announcement when possible.                                                *Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and GitLab                        support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to the actual                        repository. As an example, the direct Repository URL for DOE CODE is                         https://www.github.com/doecode/doecode                        whereas the project landing page is                         https://www.github.com/doecode.                        Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub.                         As an example, the tagged release URL                         https://github.com/doecode/server/releases/tag/v2.0.1                         can be submitted as a valid Repository URL to DOE CODE.                    

                        **A landing page or valid contact email address is required when submitting or announcing Closed Source.                         This page should provide additional information on how to obtain access to the code. For more information on landing pages,                         please see FAQ "What is a landing page?".                         If providing a contact email address, we recommend using a general software group email for your site if available.                    

                        ***For Closed Source software, you will be required to provide a License URL, in which valid contact information is available on the page                         OR provide a valid contact email address.                    

                        ****For Closed Source software, an access limitation is required. If an access limitation **other** than UNL is selected, there may be additional                         required and optional metadata fields pertaining to the specific limitation. The Access Limitations                        table provides detailed descriptions of the access limitations.                    

                        *****The source code is required when announcing code with Project Types OS-NPAR and CS. For Project Type CS, compiled binary may be provided only if the code is not available.                         The code is required for preservation purposes only, i.e., not for distribution by OSTI.                    

OS-NPAR - Refers to the Open Source, No Public Repository (OS NPAR) Project Type                        CS - Refers to the Closed Source (CS) Project Type                    

### How is business software provided to DOE CODE?

> 
                        To efficiently fulfill Departmental requirements to maintain an inventory of all DOE-funded custom-developed software and report                         this inventory to the government-wide Code.gov website,                         metadata for all scientific and non-scientific (e.g., business) software                         should be provided to DOE CODE. This inventory will foster scientific progress, provide transparency to and promote public uptake of                         DOE-funded open source software (OSS), and enable DOE to fulfill requirements for government-wide reporting of custom-developed                         software to Code.gov.                    

                        DOE CODE offers two paths for users to provide business software. Users can (1) submit code to DOE CODE, and/or (2) announce code to the                         Department of Energy for official review and release through DOE CODE. For more information about submitting and announcing code,                        see the "What does it mean to submit business software to DOE CODE?" , "                        What does it mean to announce business software to DOE CODE?"                        and Help.                    

### What does it mean to submit business software to DOE CODE?

> 
                        Submission of business software to DOE CODE is for code in early development, which can be shared with unlimited distribution only,                         and for those who wish to obtain a DOI early in the process.                         (See also "What is a Digital Object Identifier (DOI)?")                         Software that has an access limitation (OUO, CUI, etc.) cannot be provided via the submission process;                         it must go through the DOE CODE announcement process.                         Submitting business code to DOE CODE requires a minimal set of metadata.                    
                        Requirements to Submit Business Software to DOE CODE:                        - Project Type
- Repository URL;* Landing Page;** Contact Email**
- Software Title
- Description/Abstract
- License(s)***
- Developers

                        *Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket, SourceForge, and                         GitLab support Git and SVN-based repositories. When submitting a repository, users should be certain to use the direct URL to                         the actual repository. As an example, the direct Repository URL for DOE CODE is                         https://www.github.com/doecode/doecode                        whereas the project landing page is                         https://www.github.com/doecode.                        Users can also submit a tagged release of code as an individual record by providing the URL specific to that release in GitHub.                         As an example, the tagged release URL                         https://github.com/doecode/server/releases/tag/v2.0.1                         can be submitted as a valid Repository URL to DOE CODE.                    

                        **A landing page or valid contact email address is required when submitting or announcing Closed Source.                         This page should provide additional information on how to obtain access to the code.                         For more information on landing pages, please see FAQ "What is a landing page?".                         If providing a contact email address, we recommend using a general software group email for your site if available.                    

                        ***For Closed Source software, you will be required to provide a License URL in which valid contact information is available on the page                         OR provide a valid contact email address.                    

### What does it mean to announce business software to DOE CODE?

> 
                        Users may need to announce their business code to the Department of Energy to ensure announcement and dissemination in accordance with                         DOE statutory responsibilities. The announcement process is for code in later stages of development that has gone through internal review and release processes.                         For announcement to the Department of Energy, there are basic requirements for metadata fields; however, other optional/non-mandatory                         data fields should be included during announcement when possible.                    
                        Requirements to Announce Business Software to the Department of Energy through DOE CODE:                        - Project Type
- Repository URL;* Landing Page;** Contact Email**
- Software Title
- Description/Abstract
- License(s)***
- Release Date
- Access Limitation****
- Developers
- Source Code or Compiled Binary*****
- Sponsoring Organization Name
- Primary Award Number
- Research Organization Name
- Contact Information

                        *Currently only Git and SVN-based repositories are supported. Most repositories hosted at GitHub, Bitbucket,                         SourceForge, and GitLab support Git and SVN-based repositories. When submitting a repository, users should be certain                         to use the direct URL to the actual repository. As an example, the direct Repository URL for DOE CODE is                         https://www.github.com/doecode/doecode                        whereas the project landing page is                         https://www.github.com/doecode.                         Users can also submit a tagged release of code as an individual record by providing the URL specific to that release                         in GitHub.  As an example, the tagged release URL                         https://github.com/doecode/server/releases/tag/v2.0.1                         can be submitted as a valid Repository URL to DOE CODE.                    

                        **A landing page or valid contact email address is required when submitting or announcing Closed Source.                         This page should provide additional information on how to obtain access to the code. For more information on landing pages,                         please see FAQ "What is a landing page?".                         If providing a contact email address, we recommend using a general software group email for your site if available                    

                        ***For Closed Source software, you will be required to provide a License URL, in which valid contact information is available on the                         page OR provide a valid contact email address.                    

                        ****For Closed Source software, an access limitation is required. If an access limitation **other** than UNL is selected, there may be additional                         required and optional metadata fields pertaining to the specific limitation. The Access Limitations                        table provides detailed descriptions of the access limitations.                    

                        *****The source code is required when announcing code with Project Types OS-NPAR and CS. For Project Type CS, compiled binary may be provided only if the code is not available.                         The code is required for preservation purposes only, i.e., not for distribution by OSTI.                    

OS-NPAR - Refers to the Open Source, No Public Repository (OS NPAR) Project Type                        CS - Refers to the Closed Source (CS) Project Type                    

### Is a license required when providing software to DOE CODE?

> 
                    Licenses are required for certain types of software. For Open Source software (OS-PAR or OS-NPAR),                     DOE OSTI provides a list of the licenses that users can select from. Users may can choose a license not                     listed by selecting "Other" and providing a URL to the landing page of the license.                 

                    For Closed Source software, users must provide either a License URL or contact email. When providing a License URL, the License URL page                     should include valid contact information; otherwise, the user will be asked to provide a valid contact email address.                     For additional information about license requirements, reference the Announcing Software to DOE CODE flowchart.                

### What is a landing page?

> 
                    A landing page is a web page that provides information about the code and how to access the source code.                     This may include citation metadata about the software, license, access, and contact information.                

### Can I add a new or previous version of software I have previously submitted or announced to DOE CODE?

> 
                        Yes. DOE CODE offers the option to create a DOE CODE record that is a newer or previous version of any DOE CODE record you have already                         submitted or announced. You can see this functionality by logging in to your DOE CODE account and viewing the                         “Manage My Projects” page. Selecting either of the Make Version buttons, "New" or "Prev," associated with a record will take you to                         the entry form with most of the metadata fields already populated based on metadata from the associated record. You can also use this option to submit a tagged release of your code                         by entering the specific URL to the tagged release in GitHub                         (ex. https://github.com/doecode/server/releases/tag/v2.0.1).                         The Version Number field will auto-populate with the tagged release number but can still be edited if desired. Once you have submitted                         or announced your "New" or "Prev" record, DOE CODE will automatically add metadata to all newer/previous records to reflect the appropriate                         relationship using the Related Identifier fields.                         (See also, "Do I need an account to use DOE CODE?")                    

                        For information regarding semantic versioning best practices, visit                        https://semver.org.                    

### Can I submit a tagged release as an individual record to DOE CODE?

> 
                        Yes, DOE CODE allows you to submit a tagged release of software hosted in GitHub as an individual record and                         obtain a separate DOI for the release. A release is a deployable software iteration that is packaged and can be                         made available to download and use. There are two ways to submit a tagged release; either by (1) selecting                         "Add New Project" and creating a completely new record, or by (2) making a new or previous version of an existing DOE CODE record                         (see "Can I add a new or previous version of software I have previously submitted or announced to DOE CODE?" for more information on this option).                         For either option, you will enter the specific URL for the tagged release into the Repository URL field. As an example, the tagged release                         URL https://github.com/doecode/server/releases/tag/v2.0.1                         can be submitted as a valid Repository URL to DOE CODE. If a valid Repository URL is provided, DOE CODE will attempt                         to automatically populate metadata fields based on information included in the repository, including populating the Version field with the tagged release                         number (this can be edited if desired).                    

### Can I see the status and availability of my submitted/announced records?

> 
                        Yes. After logging into your account, view the “Manage My Projects” page where you can see the Status and Availability for submitted and                         announced records (see the tables below and                         "Do I need an account to use DOE CODE?").                    
                        The record Status is the state of the submission after it enters and completes the workflow. Statuses include:                        -  PENDING APPROVAL Submission  - The record has been submitted to DOE CODE and is moving through the metadata quality control process.                                 The Status will be updated to Approved Submission once this process is complete.                            
-  PENDING APPROVAL Announcement  - The record has been announced to DOE CODE and is moving through the metadata quality control/release                                 process and DOI assignment, if the record is unlimited. The Status will be updated to Approved Announcement once this process is complete.                            
-  APPROVED Submission  - The record has been approved for Submission and is available for record update and discovery in DOE CODE.                             
-  APPROVED Announcement  - The record has been approved for Announcement and is available for record update in DOE CODE. It is now discoverable                                 in DOE CODE and, depending on access limitation, in  OSTI.GOV  and  Science Research Connection (SRC) .                            
-  SAVED  - The record has entered the workflow, but not all metadata submission has been completed. The filled out                                 metadata is saved until submission or announcement.                            

                        The record Availability refers to where the software record is made available for search and discovery.                        
                        Availability includes:                    -  Submitted to DOE CODE  - The unlimited record was submitted for initial submission and optional DOI registration and is available for record                                 update and discovery in DOE CODE.                             
-  Announced to DOE CODE and OSTI.GOV  - The unlimited record was announced with DOI assignment for official software announcement.                                 The record can be updated in DOE CODE and is discoverable in both DOE CODE and  OSTI.GOV .                            
-  Announced to SRC  - The limited record was announced for official software announcement. The record can be updated in DOE CODE                                 and is discoverable in  Science Research Connection (SRC)                                 (See also                                 " What are the Project Types found in DOE CODE? "                                and                                 " Are there restrictions on the use of the material in DOE CODE? ").                            

### Does DOE CODE archive software?

> 
                        Yes. To ensure long-term preservation of DOE-funded scientific and technical information (including software), OSTI employs dark archiving                         practices as a Departmental backup and as storage to house the working copy of software resources                        (See also "Why is uploading code required for certain Project Types?").                    

### Does DOE CODE support the upload of container images as part of the submission/announcement process?

> 
                    Yes. DOE CODE allows users to upload container images in the form of binary files. Currently                    Docker and                    Singularity                    image files are supported.  If you have any issues uploading large container files, please reach out to                    doecode@osti.gov.                

### What is an access limitation?

> 
                    An access limitation is otherwise known as a distribution limitation for a piece of software or code, and indicates how a piece of                     software or code may be accessed. Different categories of software have different limitations on access.                 

                    Any software provided to DOE CODE as Open Source is automatically designated as having unlimited access when both submitting and announcing software.                

                    Closed Source software provided to DOE CODE may be designated as having unlimited or limited availability.                     Closed source software with unlimited availability may be submitted or announced to DOE CODE. Closed source software with limited availability                     may only be announced to DOE CODE.                

                    Prior to software announcement, users must ensure the software has undergone all appropriate reviews for sensitivity and export control                     and has been assigned an applicable level of distribution. For a list of access limitations and their definitions,                     please refer to the Access Limitations table.                

### How do I announce software with an access limitation, such as Controlled Unclassified Information (CUI), to OSTI?

> 
                    Limited availability software, including Export Controlled Information (ECI) and Security Sensitive Information (SSI),                     among others, can be submitted to DOE CODE for announcement and discovery in Science Research Connection (SRC).                 

                    For more information about the types of limited availability software that can be found in DOE CODE, please see the                     Access Limitations table here.                

                    To provide software with an access limitation to DOE CODE for announcement, you will need to ensure the software has undergone all appropriate                     reviews for sensitivity and export control by the originating site and has been deemed secure. If you are unsure of the software sensitivity,                     please work with your site's software point of contact.                

### What if I need to change the access limitation of a project?

> 
                    To have a project’s access limitation updated in DOE CODE, please contact doecode@osti.gov.                

### What is a YAML file? How do I auto populate the YAML file?

> 
YAML is a human friendly                     data serialization standard for all programming languages. DOE CODE provides functionality to allow users to auto-populate                     metadata in DOE CODE by placing a specifically formatted YAML file in their repository's root main directory. The file must be                     named "metadata.yml" or "doecode.yml", and the file must be formatted correctly.                     See detailed YAML information and an example file.

### Do I need an account to use DOE CODE?

> 
                    A DOE CODE account is not needed to search for DOE-funded software, but an account is needed to submit or announce scientific and business                     software. Users meeting minimum criteria can directly create a DOE CODE account. First and last name,                     government email address or valid contract number, and a password are required. From the top right of any DOE CODE page, you may register                     for an account by clicking                     Create Account (or Sign In if you already have an account).                                        The repository service we provide through GitLab requires a separate account that is separate and in addition to the OSTI account for submitting or                     announcing to DOE CODE. Those interested in using the repository service must request an account by filling out the                     request form. DOE CODE Product  Manager(s) will follow up with the requester.                

### What is a Digital Object Identifier (DOI)?

> 
                    A DOI is a digital identifier that is globally unique, persistent, machine resolvable, has an associated metadata schema,                     identifies an entity in perpetuity, and provides long-term access to the object. DOIs are assigned to enable researchers                     to more easily discover software through additional discovery pathways and reuse software through citation of the DOI.                     They also allow stronger connections to be made between software, publications, and data through reference and citation                     via DOI metadata. OSTI is a member of and registering agency for DataCite and has the authority to assign Digital Object                     Identifiers to unlimited software and code that are provided by DOE and its contractors or grantees. The assigning and                     registration of a DOI for unlimited software is a free service provided by OSTI to enhance DOE's management of this important resource.                

### What are the benefits of getting a DOI for code or software?

> - Announcing and registering code or software with DOIs enables researchers, especially future researchers, to more easily discover, access,                             and reuse the code or software for verification of the original experiment and to produce new results with the latest methods.
- DOIs facilitate accurate linkage between a document or published article and the specific underlying code or software.
- DOIs make code easy to cite in a standardized way (DOIs have become recognizable as pointers to important information around the globe),                             encouraging authors to include this step in their writing/publishing activities.
- Enabling your code or software to be easily citable means that code developers, contributors, and others involved in the development,                             but not necessarily in the authoring of a publication, can receive proper attribution.
- DOIs are designed to be more stable and persistent links than normal URLs. Registering the DOI with an international organization such as                             DataCite provides global resolving and the prospect of steadily increasing visibility of your research.

### What if I need to have a project removed from DOE CODE?

> 
                    To have a project removed from DOE CODE, please contact doecode@osti.gov.                

## Search FAQs

### How do I search DOE CODE?

>                     DOE CODE search works much like a basic Google search, where you can enter your terms into the basic search box to retrieve results.                     You can search for a single term or a phrase by putting it in "double quotes." Additionally, DOE CODE supports Boolean and proximity                     operators, wildcards, and parentheses for grouping:                    **Boolean Operators**                        DOE CODE recognizes the operators AND, OR, and NOT.                                                Example: A search for **algorithm AND "quantum simulator"** will return results that include both the term **algorithm** and the phrase **quantum simulator**.                                                Example: A search for **algorithm OR "quantum simulator"** will return results that include either the term **algorithm** or the phrase **quantum simulator**.                                                Example: A search for **algorithm NOT "quantum simulator"** will return results that include the term **algorithm** but not the phrase **quantum simulator**.                                                + and - allow for a search to either be required or forbidden in the search results.                                                Example: A search for **simulation +algorithm** will return results that include the term **simulation** and also include the term **algorithm**.                                                Example: A search for **simulation -algorithm** will return results that include the term **simulation** but not the term **algorithm**.                        **Proximity Operators**                        Example: **"quantum simulator"~3** will return results where **quantum** and **simulator** are within three words of each other in the bibliographic record.                        **Parentheses for Grouping**                        Example: A search for **algorithm AND ("quantum simulator" OR energy)** will return results that include both the term **algorithm** and either the phrase **quantum simulator** or the term **energy**.                    

### How do I use the Advanced Search?

> 
The advanced search will allow you to perform more complex searches and retrieve more specific results, offering you several fields,                        such as Title, Developer(s), or Release date to help you refine your search results.

To access the advanced search, select the green drop-down arrow from the search bar, either on the homepage or at the top of any subsequent page.

To access all the advanced search features, click on the "More Options" selection at the bottom of the advanced search.
**All Fields**                        Searches all bibliographic data.                        **Software Title**                        Searches only software titles.                        **Developers**                        Searches all developer names, including ORCID if available.                        **Identifier Numbers**                        Searches for all identifying numbers, including DOE contract number, version, non-DOE contract/award numbers, or other                        identifying numbers such as Digital Object Identifiers (DOIs).                        **Release Date**                        Searches for articles that were released within a specified timeframe. Select the starting date or ending date from the drop-down calendar                        OR type MM/DD/YYYY, e.g. 01/01/2014.                        **Project Type**                        Searches the fields for Open Source, Publicly Available Repository (OS-PAR); Open Source, Not Publicly Available Repository (OS-NPAR);                         and Closed Source (CS).                         **Licenses**                        Searches by names of licenses.                        **Programming Languages**                        Searches the specific language or languages in which the code being submitted was written.                        **Research Organization**                        Searches by the name(s) of the organization(s) that was funded and developed the software.                        **Sponsoring Organization**                        Searches the name(s) of the DOE program office(s) or other organizations that provided the funding for the development contributing                        to the software.                        **Software Type**                        Searches the field for Business or Scientific software.                        **Sort**You can choose for your results to be sorted by Relevance, Release Date (newest to oldest) or Release Date (oldest to newest).                    

### What information is found on the Full Project page in DOE CODE?

>                     The information on the Full Project page is bibliographic metadata/information unique to and descriptive of a particular project.                      Basic information includes the Title, Developer(s), and Release Date.  Below is a list of metadata that OSTI collects and                     displays in DOE CODE, with those that can be searched using the advanced search fields indicated with an asterisk(*):                    **Software Title*** - the title of the software.                        **Abstract** - summary of the software, usually including the purpose, function, and capabilities.                        **Developer(s)*** - the person(s) concerned with facets of the software development process, including research,                         design, programming, and testing of the software, along with their affiliations.                        **Contributor(s)** - the person(s) or institution(s) that have contributed to the software but is not listed as a developer.                        **Contributing Organization(s)** - other organizations that provided support to the software.                        **Release Date*** - the date the software was released.                        **Version Number** - the version of the software.                        **Project Type*** - will be Open Source, Publicly Available Repository (OS-PAR); Open Source, Not Publicly                         Available Repository (OS-NPAR); and Closed Source (CS).                         See "What are the Project Types found in DOE CODE?" for definitions of these types.                        **Software Type*** - will be Scientific or Business.                         See "How is scientific software provided to DOE CODE?" and                         "How is business software provided to DOE CODE?"                         for definitions of these types.                        **Programming Languages*** - the specific language or languages in which the code being submitted was written.                        **Licenses*** - the software licenses or rights information about the software.                        **Sponsoring Org.*** - the sponsoring or funding office of the software product.                        **Primary Contract/Award Number*** - DOE award/contract number that is largely responsible for funding the project.                        **Award DOI*** - digital object identifiers (DOIs) assigned to awards, contracts, equipment, facilities,                         grants, prizes, salary awards, time awarded, and training grants. Award DOIs are assigned by the funding/awarding organization.                         Within DOE that may include DOE funding offices, national laboratories, and user facilities. Award DOI is searched in the                         Identifier Numbers advanced search field.                        **Code ID*** - the unique identifier assigned by OSTI upon submission.                        **Site Accession Number*** - the accession or other identifying numbers assigned by the submitting site,                         university, or repository’s database, records, etc.                        **Research Org.*** - the research organization, such as a DOE national laboratory or university,                         which had primary responsibility for developing the software.                        **Related Identifiers*** - any related links, such as DOIs to published works, additional versions, or                         documentation information relevant to the software.                        **Country of Origin** - the country in which the software was developed.                        **Keywords** - a list of words or phrases that describe the software.                        **DOI*** - a unique persistent identifier that references the software and provides long-term access;                         DOIs remain stable even if the underlying address or URL for the content changes.                        **Repository URL, Landing Page, or Contact Email** - either a Repository URL where the source code is available,                         a Landing Page which includes information describing the project/contact information, or a contact email for the project will be provided.                    

### Can I sort or refine my results?

> 
Yes, you may refine your results by Project Type, License, Software Type, Release Date, and Research Organization.                     These options are available via the results page on the left-hand side of the screen.  Sort options on the results page                     include sorting by relevance and release date.

### Can I save or download the results of a search?

> 
Yes, you can save the bibliographic/metadata information for a set of results as an CSV/Excel or JSON file from the results screen.

From an individual Project page, you can save the metadata in XML, YAML, or JSON file format.  You also have the option to generate a                     citation for the record in various formats, including MLA, APA, Chicago, and BibTex.

### Are there APIs available for DOE CODE?

> 
Yes, there are multiple APIs with stable endpoints. For more information, see the API                        documentation.

### Do I need to have cookies enabled to use DOE CODE?

> 
Yes, you must select Accept All Cookies. Please see our Website Policies/Important Links for further                    information.

### What if I have more questions?

> 
See our Help page for more detailed information about submitting and announcing software to DOE CODE.

For additional assistance, Contact Us.

----

-    Website Policies / Important Links 
-    Contact Us 
-                              Vulnerability Disclosure Program 
-   
-   
-   
-    Website Policies / Important Links 
-    Contact Us 
-                              Vulnerability Disclosure Program 
-   
-   
-