semi合集-English.pdf - 第2412页
SEMI E86-0200 © SEMI 1999 , 2000 12 /* Add th e skill (qualification to operate a specific machine) to the P erson’s list of skills. Skills may be assigned or obtained throu gh the completion of specified cours e (s) and…

SEMI E86-0200 © SEMI 1999, 200011
Provided Services:
/* Set and get the Person's department. */
void setDepartment (in string department)
raises (SetValueOutOfRange, FrameworkErrorSignal);
string getDepartment ( ) raises (FrameworkErrorSignal);
/* Set and get the Person's name. */
void setFullname (in string fullname)
raises (SetValueOutOfRange, FrameworkErrorSignal);
string getFullname ( ) raises (FrameworkErrorSignal);
/* Set and get the Person's identification number. */
void setIdentificationNumber (in string idNumber)
raises (SetValueOutOfRange, FrameworkErrorSignal);
string getIdentificationNumber ( ) raises (FrameworkErrorSignal);
/* Set and get the maximum number of jobs to which a Person can be assigned simultaneously. */
void setMaximumAssignedJobs (in long maximumJobs)
raises (SetValueOutOfRange, FrameworkErrorSignal);
long getMaximumAssignedJobs ( ) raises (FrameworkErrorSignal);
/* Set and get the maximum number of machines to which a Person can be assigned simultaneously. */
void setMaximumAssignedMachines (in long maximumMachine)
raises (SetValueOutOfRange, FrameworkErrorSignal);
long getMaximumAssignedMachines ( ) raises (FrameworkErrorSignal);
/* Set and get the Person's shift assignment. */
void setShift (in shift aShift) raises (SetValueOutOfRange, FrameworkErrorSignal);
shift getShift ( ) raises (FrameworkErrorSignal);
/* Add an object within the factory to a Person’s responsibility category. The concept of “responsibility” implies
that a Person is authorized to perform, operate or access the factory object. It does not imply ownership. The first
argument represents the responsibility (object within the factory) which is associated with a responsibility category,
while the second argument is the category. If the specified category does not exist, it is created. The service returns
the added factory object. For example, add a machine to the Person’s “maintenance responsibilities” category.
Another example: add a change notice to a Person’s “signoff responsibility” category. */
any addResponsibility_toCategory (in any responsibility,
in string responsibilityCategory)
raises (FrameworkErrorSignal, ResponsibilityDuplicateSignal,
ResponsibilityCategoryNotFoundSignal );
/* Remove an object within the factory from a Person’s responsibility category. If the specified category, or
responsibility does not exist, then an exception is raised. */
void removeResponsibility_fromCategory (in any responsibility,
in string responsibilityCategory)
raises (FrameworkErrorSignal, ResponsibilityRemovalFailedSignal,
ResponsibilityCategoryRemovalFailedSignal);
/* Return the responsibilities (objects within a factory) which are assigned to a Person’s responsibility category. For
example, return all of the specifications in the category “specification management.” A dictionary of key/value pairs
is returned that represents these responsibility associations. The key is the “responsibility category name” while the
value is the set of factory objects associated with that category. */
ResponsibilitySequence responsibilities ( ) raises (FrameworkErrorSignal);

SEMI E86-0200 © SEMI 1999, 2000 12
/* Add the skill (qualification to operate a specific machine) to the Person’s list of skills. Skills may be assigned or
obtained through the completion of specified course (s) and medical examination (s). This service does not detail
specific course and medical examination requirements. */
void addSkill (in Skill aSkill)
raises (FrameworkErrorSignal, SkillDuplicateSignal);
/* Remove the skill from the Person’s list of skills. */
void removeSkill (in Skill aSkill)
raises (FrameworkErrorSignal, SkillRemovalFailedSignal,
SkillNotFoundSignal);
/* Retrieve the set of skills for which this Person is qualified. */
SkillSequence skills ( ) raises (FrameworkErrorSignal);
/* Add the specified qualification (training course or medical examination) data to the training or medical history of
a Person. */
void addQualification (in QualificationData qualificationInformation)
raises (FrameworkErrorSignal, QualificationDuplicateSignal);
/* Remove the specified qualification data from the training or medical history of a Person. */
void removeQualification (in QualificationData qualificationInformation)
raises (FrameworkErrorSignal, QualificationNotAssignedSignal);
/* Retrieve all information relative to a Person’s particular qualification by performing a search using its unique
identifier. */
QualificationData findQualificationByIdentifier (in string identifier)
raises (FrameworkErrorSignal, QualificationNotFoundSignal);
/* Retrieve the set of qualifications attained by this Person. */
QualificationDataSequence qualifications ( ) raises (FrameworkErrorSignal);
/* Return the sequence of process capabilities that this Person is qualified to perform. */
ProcessCapabilitySequence processCapabilities ( ) raises (FrameworkErrorSignal);
/***** The following services provide basic state control and query. *****/
/* Denote that this person has logged on to the current shift and is AVAILABLE. */
void makeOnShift ( )
/* Denote that this person has logged off of the current shift and is NOT AVAILABLE. */
void makeOffShift ( )
/* Denote that this Person is at a workstation and available for work. It is required that the Person has logged on to
the current shift. Assignment to machine (s) and/or job (s) may or may not have occurred. */
void makeAtWorkStation ( )
raises (FrameworkErrorSignal, InvalidStateTransitionSignal );
/* Denote that this Person is not immediately available at a work station and cannot perform work. An example of
this condition is an operator taking a personal break during a shift. */
void makeNotAtWorkStation ( )
raises (FrameworkErrorSignal, InvalidStateTransitionSignal );
/* Return a boolean denoting whether or not a Person is logged on to the current shift. */
boolean isOnShift ( ) raises (FrameworkErrorSignal);

SEMI E86-0200 © SEMI 1999, 200013
/* Return a boolean denoting whether or not a Person is available for work. */
boolean isAvailableForWork ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is at their work station. */
boolean isAtWorkStation ( ) raises (FrameworkErrorSignal);
/* Determine if a Person is qualified to perform a process or material handling job for a specific machine (has a
specific skill.) The Person is qualified to operate the machine if the machine is noted in the Person's skill list, or if a
comparison of the Person’s course and medical exam histories satisfy the requirements defined within the Skill
Management Component for the noted machine. This service does not check the availability of the Person to
actually perform a task. */
boolean hasSkill (in Skill aSkill) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is qualified for any machine. */
boolean hasSkills ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available for the specified machine. */
boolean isAvailableForMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Assign Person to a machine. A Person may be assigned to more than one machine at a time.*/
void assignToMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Terminates personnel assignment to a machine. */
void deassignFromMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is assigned to the specified machine. */
boolean isAssignedToMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is assigned to any machine. */
boolean isAssignedToMachines ( ) raises (FrameworkErrorSignal);
/* Retrieve the set of machines to which a Person is assigned. */
MachineSequence assignedMachines ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available to be assigned to more machines. */
boolean isAvailableForMoreMachineAssignments ( ) raises (FrameworkErrorSignal);
/***** The following services support job assignment. *****/
/* Return a boolean denoting whether or not a Person is qualified for the specified job. */
boolean isQualifiedForJob (in Job aJob) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is qualified for any job. */
boolean isQualifiedForJobs ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available for the specified job. */
boolean isAvailableForJob (in Job aJob) raises (FrameworkErrorSignal);
/* Assigns a Person to a job. A Person may be allocated to more than one job at a time. */
void assignToJob (in Job aJob) raises (FrameworkErrorSignal);
/* Terminates personnel assignment to a job. */
void deassignFromJob (in Job aJob) raises (FrameworkErrorSignal);