/*
Title       	Teacher Student Association Provider
Description	includes Teacher Student Qualifiers Classes and Properties
Date:        	11/17/1999
Version     	1.0
(c) Copyright 2000, Sun Microsystems, Inc.
*/


#pragma Locale ("en-US")


    Qualifier Abstract : boolean = false,
                         Scope(class, association, indication), 
			 Flavor(DisableOverride, Restricted);

    Qualifier Association : boolean = false,
                            Scope(class, association),
			    Flavor(DisableOverride);

    Qualifier Key : boolean = false,
		    Scope(property, method, reference);

    Qualifier Override : string = null,
			 Scope(property, method, reference);

    Qualifier Description : string = null,
			    Scope(any),
			    Flavor(Translatable);

    Qualifier Expensive : boolean = false,
			  Scope(property, method, reference,
				class, association);

    Qualifier In : boolean = true,
		   Scope(parameter);

    Qualifier Provider : string = null,
			 Scope(any);


    [Provider("TeacherStudent")
    ]

class Ex_Teacher
{
    [key]
    string name;
};

    [Provider("TeacherStudent")
    ]
class Ex_Student
{
    [key]
    string name;
};

    [Association,
     Provider("TeacherStudent")
    ]
class Ex_TeacherStudent
{
    Ex_Teacher REF teaches;
    Ex_Student REF taughtby;
};
