All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gov.sandia.cognition.annotation.ModelingApproximation Maven / Gradle / Ivy

There is a newer version: 4.0.1
Show newest version
/*
 * File:                ModelingApproximation.java
 * Authors:             Justin Basilico
 * Company:             Sandia National Laboratories
 * Project:             Cognitive Foundry
 * 
 * Copyright January 14, 2008, Sandia Corporation.
 * Under the terms of Contract DE-AC04-94AL85000, there is a non-exclusive 
 * license for use of this work by or on behalf of the U.S. Government. Export 
 * of this program may require a license from the United States Government. 
 * See CopyrightHistory.txt for complete details.
 * 
 */

package gov.sandia.cognition.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * The {@code ModelingApproximation} annotation indicates that an approximation
 * is being used in modeling a component. It contains the person who originally
 * made the approximation in the code, a description of the approximation, and
 * a reference to a publication that provides the basis for the approximation.
 *
 * @author  Justin Basilico
 * @author  Kevin R. Dixon
 * @author  Zachary Benz
 * @since   2.0
 */
@CodeReview(
    reviewer="Kevin R. Dixon",
    date="2008-02-08",
    changesNeeded=false,
    comments="Interface looks fine."
)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ModelingApproximation
{

    /**
     * The full name originator who is making the approximation.
     * For example, {@code "Justin Basilico"}. This is the person to contact
     * with questions about the approximation.
     * 
     * @return
     *      The full name of the originator of the approximation.
     */
    String[] originator();

    /**
     * A description of the approximation.
     * 
     * @return
     *      A description of the approximation.
     */
    String[] description();

    /**
     * A reference to a publication providing a basis for the modeling
     * assumption.
     * 
     * @return
     *      A reference to a publication providing the basis for the modeling
     *      assumption.
     */
    PublicationReference[] reference();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy