semi合集-English.pdf - 第1814页
SEMI E42-0704 © SEMI 1995, 2004 83 Table 12.2 Recipe Management Paramete r Dictionary Parameter Definition Form AgentSpec_Desc Agent-specific dataset descriptor. Structure composed of AgentSpec_DescName, AgentSpec_DescLe…

SEMI E42-0704 © SEMI 1995, 2004 82
11.4 Recipe Executor Events — The recipe executor shall provide the Recipe Select and Recipe Deselect events.
Recipe executors that are capable of originating a new execution recipe shall provide the New Execution Recipe
event. Recipe executors that are capable of changing the body of an existing recipe shall provide an Execution
Recipe Change Event. These events allow service users other than the originating namespace to receive notification
whenever a new recipe is created or an existing recipe body is modified.
12 Recipe Namespace Services
This section defines recipe management and namespace services (see Table 12.1), which begin with a prefix of
RMN. RMS services used by distributed recipe namespaces and by the recipe executor are defined in later sections.
Recipe management and recipe namespace services request that an operation be performed on a recipe within a
namespace or on a namespace.
Recipe management operations that change recipe attributes are invoked with the RMNAction or RMNVarPar
requests.
Certain activities that require extended time to complete may indicate the intent to comply in the response message
and then provide confirmation with the RMNComplete message at the completion of each individual operation
specified.
Table 12.1 Recipe Namespace Services
Message Service
Name
Type Description
RMNCreateNS R Create a new namespace.
RMNDeleteNS R Delete a namespace.
RMNRenameNS R Rename a namespace (assign
a new identifier).
RMNSpaceInquire R Determine the available space
for recipe storage.
RMNRcpStatInquire R Determine a recipe's read-only
status.
RMNVersionInquire R Determine the best version of
a recipe.
RMNCreate R Initialize new recipe with the
specified body.
RMNUpdate R Transfer new recipe body.
RMNStore R Store a recipe.
RMNRetrieve R Retrieve a recipe and give to
the requestor.
RMNCopy R Copy a recipe to a new recipe
(originated).
RMNRename R Rename a recipe.
RMNAction R Perform an operation on a
recipe (verify, link, unlink, …)
RMNVarPar N Modify agent-
s
pecific variable
parameter definition.
RMNGetDescriptor R Get recipe descriptors.
RMNComplete N Notification that a requested
action has completed.
12.1 Recipe Management Message Parameter
Dictionary — Table 12.2 contains the definitions for
message parameters, and their components, used by
namespace services.
For purposes of transferring a recipe with its
components, it is regarded as having three types of
sections: a section containing the generic attributes, a
section consisting of the body, and a section containing
the attributes of the agent-specific dataset. The generic
section is always transferred first, and the attributes
AttrLength
, AttrTimestamp, BodyLength, and
EditTime
are always sent first, in that order. This
allows the length information to be immediately
determined by the receiver. Agent-specific dataset
sections are sent last, since the number of agent-specific
datasets will vary.
Descriptors are also regarded as consisting of sections
for the generic descriptor, the body descriptor, and zero
or more agent-specific descriptors.
Each start of each section is identified with a text string
reserved for that section type.

SEMI E42-0704 © SEMI 1995, 2004 83
Table 12.2 Recipe Management Parameter Dictionary
Parameter Definition Form
AgentSpec_Desc Agent-specific dataset descriptor. Structure composed of AgentSpec_DescName,
AgentSpec_DescLength,
AgentSpec_DescTimestamp.
AgentSpec_DescName Identifies start of agent-specific dataset
descriptor.
Text = "ASDesc".
AgentSpec_DescLength Value of AgentSpec_AttrLength. Unsigned integer.
AgentSpec_DescTimestamp Value of AgentSpec_AttrChgTime
attribute.
Timestamp format:
"YYYYMMDDHHMMSSCC".
AgentSpec_Section A message section for an agent-specific
dataset.
(List of) structures composed of
AgentSpec_SectionName, AgentSpec_SectionData
AgentSpec_SectionData Agent-specific attribute name/value pairs. (List of) AttrSetting
AgentSpec_SectionName Identifies start of agent-specific dataset. Text = "ASDS".
AttrData Value of attribute. Varies with attribute.
AttrName Name of attribute. Text.
AttrSetting Attribute name/value pair. Structure composed of AttrName, AttrData.
BodyData The recipe body contents. Varies.
BodyDesc Body descriptor section. Structure composed of BodyDescName,
BodyDescLength, BodyDescTimestamp.
BodyDescLength Value of BodyLength attribute. Unsigned integer.
BodyDescName Identifies start of body descriptor. Text = "BodyDesc".
BodyDescTimestamp Value of EditTime attribute. Timestamp format:
"YYYYMMDDHHMMSSCC".
BodySection The recipe body section. Structure composed of BodySectionName,
BodyData.
BodySectionName Value of BodyName attribute. Text = "Body".
ErrorCode Contains the code for the specific error
found.
Enumerated:
unknown object type in specifier
unknown object identifier in specifier
unknown attribute name
invalid attribute value
access denied
syntax error
recipe not found
verification error
validation error
agent not found
ErrorText Text in support of the error code to
provide additional information.
Text.
GenAttrSection The generic attribute section. Structure composed of GenAttrSectionName and
(List of) AttrSettings for generic attributes.
GenAttrSectionName Value of Gen_AttrName attribute. Text ="Generic".
GenDesc Generic attribute descriptor. Structure composed of GenDescName,
GenDescLength, and GenDescTimeStamp.
GenDescLength Value of AttrLength attribute. Unsigned integer.
GenDescName Identifies start of generic section. Text ="GenDesc".
GenDescTimestamp Value of AttrChgTime attribute. Timestamp format:
"YYYYMMDDHHMMSSCC".
LinkID In response or completion message, has
the value of RMOpID in the request.
Otherwise, set to zero if, and only if, no
further completion messages will be sent.
Unsigned integer.
NSAck Acknowledge code. Enumerated:
requested operation completed without errors

SEMI E42-0704 © SEMI 1995, 2004 84
requested operation completed with errors
requested operation will be performed and
notifications of results will be sent
NSStatus Information concerning the outcome of
the requested operations.
Structure composed of NSAck and Status.
RcpClass Recipe class. Formatted text.
RcpName Recipe name. Text.
RcpVersion Recipe version. Text.
RMAction Identifies action performed on recipe. Enumerated:
delete
protect
verify
link
unlink
certify
de-certify
download
upload
RMAgent Agent name (identifier). Text.
RMChangeStatus Indicates new status of recipe. Enumerated:
no change
created (new identifier)
updated (modified)
deleted
copied (new identifier)
renamed (new identifier)
verified
linked
unlinked
certified
de-certified
RMDestRcpID Identifier of destination recipe. Formatted text.
RMDesc Recipe descriptor (timestamp and length
attributes).
Structure composed of GenAttrDesc, BodyDesc,
and (list of) AgentSpec_Desc
RMNewNS New namespace name. Text.
RMSpace Amount of space available in namespace. Unsigned integer.
RMNSSpec Target namespace specifier. Formatted text for object specifier.
RMOpID Operation ID assigned by the service user
in a request.
Unsigned integer.
RMParam Parameter definition. Structure composed of RMParamName,
RMParamSetting, and RMParamRule.
RMParamName Parameter name. Text.
RMParamRule Parameter definition restriction. Formatted text.
RMParamSetting The initial value to use for that parameter
at execution time.
Varies with parameter definition and recipe
language.
RMRcpID Recipe identifier. Formatted text.
RMRcpSpec Target recipe specifier. Formatted text for object specifier.
RMRcpStat The status of a recipe. Enumerated:
Does not exist
Unprotected
Protected
RMSectionsCode Indicates which recipe sections are
requested.
Enumerated:
All generic attributes and the body
Generic attributes
Generic and body
Agent-specific dataset only
All agent-specific datasets
RMSectionsRequested Specification of recipe sections requested. Structure composed of RMSectionsCode and