You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iec61850bean/asn1/mms/more-asn1-files/mms-iso.asn

4768 lines
131 KiB
Groff

--Quelle: http://isotc.iso.org/livelink/livelink/8434785/protocol.txt?func=doc.Fetch&nodeid=8434785
ISO-9506-MMS-1 { iso standard 9506 part(2) mms-abstract-syntax-version1(1) }
DEFINITIONS ::= BEGIN
EXPORTS AlternateAccess,
AttachToEventCondition,
AttachToSemaphore,
ConfirmedServiceRequest,
Data,
EE-State,
FileName,
Identifier,
Integer8,
Integer32,
MMSString,
MMS255String,
ObjectName,
TimeOfDay,
TypeSpecification,
Unsigned32,
Unsigned8,
VariableSpecification;
IMPORTS ApplicationReference,
Authentication-value FROM
MMS-Environment-1 { iso standard 9506 part(2) mms-environment-version1 (4) }
ObtainFile-Request,
ObtainFile-Response,
ObtainFile-Error,
FileOpen-Request,
FileOpen-Response,
FileRead-Request,
FileRead-Response,
FileClose-Request,
FileClose-Response,
FileRename-Request,
FileRename-Response,
FileRename-Error,
FileDelete-Request,
FileDelete-Response,
FileDirectory-Request,
FileDirectory-Response,
DefineScatteredAccess-Request,
DefineScatteredAccess-Response,
ScatteredAccessDescription,
GetScatteredAccessAttributes-Request,
GetScatteredAccessAttributes-Response FROM
ISO-9506-MMS-1A { iso standard 9506 part(2) mms-annex-version1(3) }
AccessCondition,
AdditionalCBBOptions,
AdditionalSupportOptions,
Address,
AlarmAckRule,
Control-State,
DomainState,
EC-State,
EC-Class,
EE-Duration,
EE-Class,
EventTime,
Journal-Variable,
LogicalStatus,
Modifier,
normalPriority,
normalSeverity,
ParameterSupportOptions,
PhysicalStatus,
Priority,
ProgramInvocationState,
Running-Mode,
ServiceSupportOptions,
Severity,
Transitions,
TypeDescription,
ULState,
VMDState
FROM MMS-Object-Module-1
{ iso standard 9506 part(1) mms-object-model-version1(2) };
MMSpdu ::= CHOICE {
confirmed-RequestPDU [0] IMPLICIT Confirmed-RequestPDU,
confirmed-ResponsePDU [1] IMPLICIT Confirmed-ResponsePDU,
confirmed-ErrorPDU [2] IMPLICIT Confirmed-ErrorPDU,
IF ( unsolicitedStatus informationReport eventNotification )
unconfirmed-PDU [3] IMPLICIT Unconfirmed-PDU,
ELSE
unconfirmed-PDU [3] IMPLICIT NULL,
ENDIF
rejectPDU [4] IMPLICIT RejectPDU,
IF (cancel)
cancel-RequestPDU [5] IMPLICIT Cancel-RequestPDU,
cancel-ResponsePDU [6] IMPLICIT Cancel-ResponsePDU,
cancel-ErrorPDU [7] IMPLICIT Cancel-ErrorPDU,
ELSE
cancel-RequestPDU [5] IMPLICIT NULL,
cancel-ResponsePDU [6] IMPLICIT NULL,
cancel-ErrorPDU [7] IMPLICIT NULL,
ENDIF
initiate-RequestPDU [8] IMPLICIT Initiate-RequestPDU,
initiate-ResponsePDU [9] IMPLICIT Initiate-ResponsePDU,
initiate-ErrorPDU [10] IMPLICIT Initiate-ErrorPDU,
conclude-RequestPDU [11] IMPLICIT Conclude-RequestPDU,
conclude-ResponsePDU [12] IMPLICIT Conclude-ResponsePDU,
conclude-ErrorPDU [13] IMPLICIT Conclude-ErrorPDU
}
Confirmed-RequestPDU ::= SEQUENCE {
invokeID Unsigned32,
IF (attachToEventCondition attachToSemaphore )
listOfModifiers SEQUENCE OF Modifier OPTIONAL,
ENDIF
service ConfirmedServiceRequest,
...
IF ( csr cspi ),
service-ext [79] Request-Detail OPTIONAL
ENDIF
-- shall not be transmitted if value is the value
-- of a tagged type derived from NULL
}
ConfirmedServiceRequest ::= CHOICE {
IF ( status )
status
[0] IMPLICIT Status-Request
ELSE
status
[0] IMPLICIT NULL
ENDIF
IF ( getNameList )
, getNameList
[1] IMPLICIT GetNameList-Request
ELSE
, getNameList
[1] IMPLICIT NULL
ENDIF
IF ( identify )
, identify
[2] IMPLICIT Identify-Request
ELSE
, identify
[2] IMPLICIT NULL
ENDIF
IF ( rename )
, rename
[3] IMPLICIT Rename-Request
ELSE
, rename
[3] IMPLICIT NULL
ENDIF
IF ( read )
, read
[4] IMPLICIT Read-Request
ELSE
, read
[4] IMPLICIT NULL
ENDIF
IF ( write )
, write
[5] IMPLICIT Write-Request
ELSE
, write
[5] IMPLICIT NULL
ENDIF
IF ( vnam vadr )
IF ( getVariableAccessAttributes )
, getVariableAccessAttributes
[6] GetVariableAccessAttributes-Request
ELSE
, getVariableAccessAttributes
[6] IMPLICIT NULL
ENDIF
ELSE
, getVariableAccessAttributes
[6] IMPLICIT NULL
ENDIF
IF ( vnam )
IF ( vadr )
IF ( defineNamedVariable )
, defineNamedVariable
[7] IMPLICIT DefineNamedVariable-Request
ELSE
, defineNamedVariable
[7] IMPLICIT NULL
ENDIF
ELSE
, defineNamedVariable
[7] IMPLICIT NULL
ENDIF
ELSE
, defineNamedVariable
[7] IMPLICIT NULL
ENDIF
IF ( vsca )
-- [8] is reserved for a service defined in Annex E
IF ( defineScatteredAccess )
, defineScatteredAccess
[8] IMPLICIT DefineScatteredAccess-Request
ELSE
, defineScatteredAccess
[8] IMPLICIT NULL
ENDIF
-- [9] is reserved for a service defined in Annex E
IF ( getScatteredAccessAttributes )
, getScatteredAccessAttributes
[9] GetScatteredAccessAttributes-Request
ELSE
, getScatteredAccessAttributes
[9] IMPLICIT NULL
ENDIF
ELSE
, defineScatteredAccess
[8] IMPLICIT NULL,
getScatteredAccessAttributes
[9] IMPLICIT NULL
ENDIF
IF ( vnam )
IF ( deleteVariableAccess )
, deleteVariableAccess
[10] IMPLICIT DeleteVariableAccess-Request
ELSE
, deleteVariableAccess
[10] IMPLICIT NULL
ENDIF
ELSE
, deleteVariableAccess
[10] IMPLICIT NULL
ENDIF
IF ( vlis )
IF ( vnam )
IF ( defineNamedVariableList )
, defineNamedVariableList
[11] IMPLICIT DefineNamedVariableList-Request
ELSE
, defineNamedVariableList
[11] IMPLICIT NULL
ENDIF
IF ( getNamedVariableListAttributes )
, getNamedVariableListAttributes
[12] GetNamedVariableListAttributes-Request
ELSE
, getNamedVariableListAttributes
[12] IMPLICIT NULL
ENDIF
IF ( deleteNamedVariableList )
, deleteNamedVariableList
[13] IMPLICIT DeleteNamedVariableList-Request
ELSE
, deleteNamedVariableList
[13] IMPLICIT NULL
ENDIF
ELSE
, defineNamedVariableList
[11] IMPLICIT NULL,
getNamedVariableListAttribute
[12] IMPLICIT NULL,
deleteNamedVariableList
[13] IMPLICIT NULL
ENDIF
ELSE
, defineNamedVariableList
[11] IMPLICIT NULL,
getNamedVariableListAttributes
[12] IMPLICIT NULL,
deleteNamedVariableList
[13] IMPLICIT NULL
ENDIF
ENDIF
IF ( vnam )
IF ( defineNamedType )
, defineNamedType
[14] IMPLICIT DefineNamedType-Request
ELSE
, defineNamedType
[14] IMPLICIT NULL
ENDIF
IF ( getNamedTypeAttributes )
, getNamedTypeAttributes
[15] GetNamedTypeAttributes-Request
ELSE
, getNamedTypeAttributes
[15] IMPLICIT NULL
ENDIF
IF ( deleteNamedType )
, deleteNamedType
[16] IMPLICIT DeleteNamedType-Request
ELSE
, deleteNamedType
[16] IMPLICIT NULL
ENDIF
ELSE
, defineNamedType
[14] IMPLICIT NULL,
getNamedTypeAttributes
[15] IMPLICIT NULL,
deleteNamedType
[16] IMPLICIT NULL
ENDIF
IF ( input )
, input
[17] IMPLICIT Input-Request
ELSE
, input
[17] IMPLICIT NULL
ENDIF
IF ( output )
, output
[18] IMPLICIT Output-Request
ELSE
, output
[18] IMPLICIT NULL
ENDIF
IF ( takeControl )
, takeControl
[19] IMPLICIT TakeControl-Request
ELSE
, takeControl
[19] IMPLICIT NULL
ENDIF
IF ( relinquishControl )
, relinquishControl
[20] IMPLICIT RelinquishControl-Request
ELSE
, relinquishControl
[20] IMPLICIT NULL
ENDIF
IF ( defineSemaphore )
, defineSemaphore
[21] IMPLICIT DefineSemaphore-Request
ELSE
, defineSemaphore
[21] IMPLICIT NULL
ENDIF
IF ( deleteSemaphore )
, deleteSemaphore
[22] DeleteSemaphore-Request
ELSE
, deleteSemaphore
[22] IMPLICIT NULL
ENDIF
IF ( reportSemaphoreStatus )
, reportSemaphoreStatus
[23] ReportSemaphoreStatus-Request
ELSE
, reportSemaphoreStatus
[23] IMPLICIT NULL
ENDIF
IF ( reportPoolSemaphoreStatus )
, reportPoolSemaphoreStatus
[24] IMPLICIT ReportPoolSemaphoreStatus-Request
ELSE
, reportPoolSemaphoreStatus
[24] IMPLICIT NULL
ENDIF
IF ( reportSemaphoreEntryStatus )
, reportSemaphoreEntryStatus
[25] IMPLICIT ReportSemaphoreEntryStatus-Request
ELSE
, reportSemaphoreEntryStatus
[25] IMPLICIT NULL
ENDIF
IF ( initiateDownloadSequence )
, initiateDownloadSequence
[26] IMPLICIT InitiateDownloadSequence-Request,
downloadSegment
[27] IMPLICIT DownloadSegment-Request,
terminateDownloadSequence
[28] IMPLICIT TerminateDownloadSequence-Request
ELSE
, initiateDownloadSequence
[26] IMPLICIT NULL,
downloadSegment
[27] IMPLICIT NULL,
terminateDownloadSequence
[28] IMPLICIT NULL
ENDIF
IF ( initiateUploadSequence )
, initiateUploadSequence
[29] IMPLICIT InitiateUploadSequence-Request,
uploadSegment
[30] IMPLICIT UploadSegment-Request,
terminateUploadSequence
[31] IMPLICIT TerminateUploadSequence-Request
ELSE
, initiateUploadSequence
[29] IMPLICIT NULL,
uploadSegment
[30] IMPLICIT NULL,
terminateUploadSequence
[31] IMPLICIT NULL
ENDIF
IF ( requestDomainDownload )
, requestDomainDownload
[32] IMPLICIT RequestDomainDownload-Request
ELSE
, requestDomainDownload
[32] IMPLICIT NULL
ENDIF
IF ( requestDomainUpload )
, requestDomainUpload
[33] IMPLICIT RequestDomainUpload-Request
ELSE
, requestDomainUpload
[33] IMPLICIT NULL
ENDIF
IF ( loadDomainContent )
, loadDomainContent
[34] IMPLICIT LoadDomainContent-Request
ELSE
, loadDomainContent
[34] IMPLICIT NULL
ENDIF
IF ( storeDomainContent )
, storeDomainContent
[35] IMPLICIT StoreDomainContent-Request
ELSE
, storeDomainContent
[35] IMPLICIT NULL
ENDIF
IF ( deleteDomain )
, deleteDomain
[36] IMPLICIT DeleteDomain-Request
ELSE
, deleteDomain
[36] IMPLICIT NULL
ENDIF
IF ( getDomainAttributes )
, getDomainAttributes
[37] IMPLICIT GetDomainAttributes-Request
ELSE
, getDomainAttributes
[37] IMPLICIT NULL
ENDIF
IF ( createProgramInvocation )
, createProgramInvocation
[38] IMPLICIT CreateProgramInvocation-Request
ELSE
, createProgramInvocation
[38] IMPLICIT NULL
ENDIF
IF ( deleteProgramInvocation )
, deleteProgramInvocation
[39] IMPLICIT DeleteProgramInvocation-Request
ELSE
, deleteProgramInvocation
[39] IMPLICIT NULL
ENDIF
IF ( start )
, start
[40] IMPLICIT Start-Request
ELSE
, start
[40] IMPLICIT NULL
ENDIF
IF ( stop )
, stop
[41] IMPLICIT Stop-Request
ELSE
, stop
[41] IMPLICIT NULL
ENDIF
IF ( resume )
, resume
[42] IMPLICIT Resume-Request
ELSE
, resume
[42] IMPLICIT NULL
ENDIF
IF ( reset )
, reset
[43] IMPLICIT Reset-Request
ELSE
, reset
[43] IMPLICIT NULL
ENDIF
IF ( kill )
, kill
[44] IMPLICIT Kill-Request
ELSE
, kill
[44] IMPLICIT NULL
ENDIF
IF ( getProgramInvocationAttributes )
, getProgramInvocationAttributes
[45] IMPLICIT GetProgramInvocationAttributes-Request
ELSE
, getProgramInvocationAttributes
[45] IMPLICIT NULL
ENDIF
IF ( obtainFile )
, obtainFile
[46] IMPLICIT ObtainFile-Request
ELSE
, obtainFile
[46] IMPLICIT NULL
ENDIF
IF ( defineEventCondition )
, defineEventCondition
[47] IMPLICIT DefineEventCondition-Request
ELSE
, defineEventCondition
[47] IMPLICIT NULL
ENDIF
IF ( deleteEventCondition )
, deleteEventCondition
[48] DeleteEventCondition-Request
ELSE
, deleteEventCondition
[48] IMPLICIT NULL
ENDIF
IF ( getEventConditionAttributes )
, getEventConditionAttributes
[49] GetEventConditionAttributes-Request
ELSE
, getEventConditionAttributes
[49] IMPLICIT NULL
ENDIF
IF ( reportEventConditionStatus )
, reportEventConditionStatus
[50] ReportEventConditionStatus-Request
ELSE
, reportEventConditionStatus
[50] IMPLICIT NULL
ENDIF
IF ( alterEventConditionMonitoring )
, alterEventConditionMonitoring
[51] IMPLICIT AlterEventConditionMonitoring-Request
ELSE
, alterEventConditionMonitoring
[51] IMPLICIT NULL
ENDIF
IF ( triggerEvent )
, triggerEvent
[52] IMPLICIT TriggerEvent-Request
ELSE
, triggerEvent
[52] IMPLICIT NULL
ENDIF
IF ( defineEventAction )
, defineEventAction
[53] IMPLICIT DefineEventAction-Request
ELSE
, defineEventAction
[53] IMPLICIT NULL
ENDIF
IF ( deleteEventAction )
, deleteEventAction
[54] DeleteEventAction-Request
ELSE
, deleteEventAction
[54] IMPLICIT NULL
ENDIF
IF ( getEventActionAttributes )
, getEventActionAttributes
[55] GetEventActionAttributes-Request
ELSE
, getEventActionAttributes
[55] IMPLICIT NULL
ENDIF
IF ( reportEventActionStatus )
, reportEventActionStatus
[56] ReportEventActionStatus-Request
ELSE
, reportEventActionStatus
[56] IMPLICIT NULL
ENDIF
IF ( defineEventEnrollment )
, defineEventEnrollment
[57] IMPLICIT DefineEventEnrollment-Request
ELSE
, defineEventEnrollment
[57] IMPLICIT NULL
ENDIF
IF ( deleteEventEnrollment )
, deleteEventEnrollment
[58] DeleteEventEnrollment-Request
ELSE
, deleteEventEnrollment
[58] IMPLICIT NULL
ENDIF
IF ( alterEventEnrollment )
, alterEventEnrollment
[59] IMPLICIT AlterEventEnrollment-Request
ELSE
, alterEventEnrollment
[59] IMPLICIT NULL
ENDIF
IF ( reportEventEnrollmentStatus )
, reportEventEnrollmentStatus
[60] ReportEventEnrollmentStatus-Request
ELSE
, reportEventEnrollmentStatus
[60] IMPLICIT NULL
ENDIF
IF ( getEventEnrollmentAttributes )
, getEventEnrollmentAttributes
[61] IMPLICIT GetEventEnrollmentAttributes-Request
ELSE
, getEventEnrollmentAttributes
[61] IMPLICIT NULL
ENDIF
IF ( acknowledgeEventNotification )
, acknowledgeEventNotification
[62] IMPLICIT AcknowledgeEventNotification-Request
ELSE
, acknowledgeEventNotification
[62] IMPLICIT NULL
ENDIF
IF ( getAlarmSummary )
, getAlarmSummary
[63] IMPLICIT GetAlarmSummary-Request
ELSE
, getAlarmSummary
[63] IMPLICIT NULL
ENDIF
IF ( getAlarmEnrollmentSummary )
, getAlarmEnrollmentSummary
[64] IMPLICIT GetAlarmEnrollmentSummary-Request
ELSE
, getAlarmEnrollmentSummary
[64] IMPLICIT NULL
ENDIF
IF ( readJournal )
, readJournal
[65] IMPLICIT ReadJournal-Request
ELSE
, readJournal
[65] IMPLICIT NULL
ENDIF
IF ( writeJournal )
, writeJournal
[66] IMPLICIT WriteJournal-Request
ELSE
, writeJournal
[66] IMPLICIT NULL
ENDIF
IF ( initializeJournal )
, initializeJournal
[67] IMPLICIT InitializeJournal-Request
ELSE
, initializeJournal
[67] IMPLICIT NULL
ENDIF
IF ( reportJournalStatus )
, reportJournalStatus
[68] ReportJournalStatus-Request
ELSE
, reportJournalStatus
[68] IMPLICIT NULL
ENDIF
IF ( createJournal )
, createJournal
[69] IMPLICIT CreateJournal-Request
ELSE
, createJournal
[69] IMPLICIT NULL
ENDIF
IF ( deleteJournal )
, deleteJournal
[70] IMPLICIT DeleteJournal-Request
ELSE
, deleteJournal
[70] IMPLICIT NULL
ENDIF
IF ( getCapabilityList )
, getCapabilityList
[71] IMPLICIT GetCapabilityList-Request
ELSE
, getCapabilityList
[71] IMPLICIT NULL
ENDIF
-- choices [72] through [77] are reserved for use by services
-- defined in annex D
IF ( fileOpen )
, fileOpen
[72] IMPLICIT FileOpen-Request
ELSE
, fileOpen
[72] IMPLICIT NULL
ENDIF
IF ( fileRead )
, fileRead
[73] IMPLICIT FileRead-Request
ELSE
, fileRead
[73] IMPLICIT NULL
ENDIF
IF ( fileClose )
, fileClose
[74] IMPLICIT FileClose-Request
ELSE
, fileClose
[74] IMPLICIT NULL
ENDIF
IF ( fileRename )
, fileRename
[75] IMPLICIT FileRename-Request
ELSE
, fileRename
[75] IMPLICIT NULL
ENDIF
IF ( fileDelete )
, fileDelete
[76] IMPLICIT FileDelete-Request
ELSE
, fileDelete
[76] IMPLICIT NULL
ENDIF
IF ( fileDirectory )
, fileDirectory
[77] IMPLICIT FileDirectory-Request
ELSE
, fileDirectory
[77] IMPLICIT NULL
ENDIF
,...
IF ( csr cspi )
, additionalService
[78] AdditionalService-Request
ENDIF
-- choice [79] is reserved
IF ( getDataExchangeAttributes )
, getDataExchangeAttributes
[80] GetDataExchangeAttributes-Request
-- Shall not appear in minor version 1
ENDIF
IF ( exchangeData )
, exchangeData
[81] IMPLICIT ExchangeData-Request
-- Shall not appear in minor version 1
ENDIF
IF ( defineAccessControlList )
, defineAccessControlList
[82] IMPLICIT DefineAccessControlList-Request
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( getAccessControlListAttributes )
, getAccessControlListAttributes
[83] GetAccessControlListAttributes-Request
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( reportAccessControlledObjects )
, reportAccessControlledObjects
[84] IMPLICIT ReportAccessControlledObjects-Request
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( deleteAccessControlList )
, deleteAccessControlList
[85] IMPLICIT DeleteAccessControlList-Request
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( changeAccessControl )
, changeAccessControl
[86] IMPLICIT ChangeAccessControl-Request
-- Shall not appear in minor version 1 or 2
ENDIF
,...
}
AdditionalService-Request ::= CHOICE {
IF ( csr )
IF ( vMDStop )
vMDStop
[0] IMPLICIT VMDStop-Request
ELSE
vMDStop
[0] IMPLICIT NULL
ENDIF
IF ( vMDReset )
, vMDReset
[1] IMPLICIT VMDReset-Request
ELSE
, vMDReset
[1] IMPLICIT NULL
ENDIF
IF ( select )
, select
[2] IMPLICIT Select-Request
ELSE
, select
[2] IMPLICIT NULL
ENDIF
IF ( alterProgramInvocationAttributes )
, alterPI
[3] IMPLICIT AlterProgramInvocationAttributes-Request
ELSE
, alterPI
[3] IMPLICIT NULL
ENDIF
ELSE
, vMDStop
[0] IMPLICIT NULL,
vMDReset
[1] IMPLICIT NULL,
select
[2] IMPLICIT NULL,
alterPI
[3] IMPLICIT NULL
ENDIF
IF ( cspi )
IF ( initiateUnitControlLoad )
, initiateUCLoad
[4] IMPLICIT InitiateUnitControlLoad-Request
ELSE
, initiateUCLoad
[4] IMPLICIT NULL
ENDIF
IF ( unitControlLoadSegment )
, uCLoad
[5] IMPLICIT UnitControlLoadSegment-Request
ELSE
, uCLoad
[5] IMPLICIT NULL
ENDIF
IF ( unitControlUpload )
, uCUpload
[6] IMPLICIT UnitControlUpload-Request
ELSE
, uCUpload
[6] IMPLICIT NULL
ENDIF
IF ( startUnitControl )
, startUC
[7] IMPLICIT StartUnitControl-Request
ELSE
, startUC
[7] IMPLICIT NULL
ENDIF
IF ( stopUnitControl )
, stopUC
[8] IMPLICIT StopUnitControl-Request
ELSE
, stopUC
[8] IMPLICIT NULL
ENDIF
IF ( createUnitControl )
, createUC
[9] IMPLICIT CreateUnitControl-Request
ELSE
, createUC
[9] IMPLICIT NULL
ENDIF
IF ( addToUnitControl )
, addToUC
[10] IMPLICIT AddToUnitControl-Request
ELSE
, addToUC
[10] IMPLICIT NULL
ENDIF
IF ( removeFromUnitControl )
, removeFromUC
[11] IMPLICIT RemoveFromUnitControl-Request
ELSE
, removeFromUC
[11] IMPLICIT NULL
ENDIF
IF ( getUnitControlAttributes )
, getUCAttributes
[12] IMPLICIT GetUnitControlAttributes-Request
ELSE
, getUCAttributes
[12] IMPLICIT NULL
ENDIF
IF ( loadUnitControlFromFile )
, loadUCFromFile
[13] IMPLICIT LoadUnitControlFromFile-Request
ELSE
, loadUCFromFile
[13] IMPLICIT NULL
ENDIF
IF ( storeUnitControlToFile )
, storeUCToFile
[14] IMPLICIT StoreUnitControlToFile-Request
ELSE
, storeUCToFile
[14] IMPLICIT NULL
ENDIF
IF ( deleteUnitControl )
, deleteUC
[15] IMPLICIT DeleteUnitControl-Request
ELSE
, deleteUC
[15] IMPLICIT NULL
ENDIF
IF ( defineEventConditionList )
, defineECL
[16] DefineEventConditionList-Request
ELSE
, defineECL
[16] IMPLICIT NULL
ENDIF
IF ( deleteEventConditionList )
, deleteECL
[17] DeleteEventConditionList-Request
ELSE
, deleteECL
[17] IMPLICIT NULL
ENDIF
IF ( addEventConditionListReference )
, addECLReference
[18] IMPLICIT AddEventConditionListReference-Request
ELSE
, addECLReference
[18] IMPLICIT NULL
ENDIF
IF ( removeEventConditionListReference )
, removeECLReference
[19] IMPLICIT RemoveEventConditionListReference-Request
ELSE
, removeECLReference
[19] IMPLICIT NULL
ENDIF
IF ( getEventConditionListAttributes )
, getECLAttributes
[20] GetEventConditionListAttributes-Request
ELSE
, getECLAttributes
[20] IMPLICIT NULL
ENDIF
IF ( reportEventConditionListStatus )
, reportECLStatus
[21] IMPLICIT ReportEventConditionListStatus-Request
ELSE
, reportECLStatus
[21] IMPLICIT NULL
ENDIF
IF ( alterEventConditionListMonitoring )
, alterECLMonitoring
[22] IMPLICIT AlterEventConditionListMonitoring-Request
ELSE
, alterECLMonitoring
[22] IMPLICIT NULL
ENDIF
ELSE
, initiateUCLoad
[4] IMPLICIT NULL,
uCLoad
[5] IMPLICIT NULL,
uCUpload
[6] IMPLICIT NULL,
startUC
[7] IMPLICIT NULL,
stopUC
[8] IMPLICIT NULL,
createUC
[9] IMPLICIT NULL,
addToUC
[10] IMPLICIT NULL,
removeFromUC
[11] IMPLICIT NULL,
getUCAttributes
[12] IMPLICIT NULL,
loadUCFromFile
[13] IMPLICIT NULL,
storeUCToFile
[14] IMPLICIT NULL,
deleteUC
[15] IMPLICIT NULL,
defineECL
[16] IMPLICIT NULL,
deleteECL
[17] IMPLICIT NULL,
addECLReference
[18] IMPLICIT NULL,
removeECLReference
[19] IMPLICIT NULL,
getECLAttributes
[20] IMPLICIT NULL,
reportECLStatus
[21] IMPLICIT NULL,
alterECLMonitoring
[22] IMPLICIT NULL
ENDIF
}
Request-Detail ::= CHOICE {
-- this choice shall be selected if the tag value of the
-- ConfirmedServiceRequest does not match any of the tags below
otherRequests NULL
IF ( createProgramInvocation )
, createProgramInvocation
[38] IMPLICIT CS-CreateProgramInvocation-Request
ELSE
, createProgramInvocation
[38] IMPLICIT NULL
ENDIF
IF ( start )
, start
[40] IMPLICIT CS-Start-Request
ELSE
, start
[40] IMPLICIT NULL
ENDIF
IF ( resume )
, resume
[42] IMPLICIT CS-Resume-Request
ELSE
, resume
[42] IMPLICIT NULL
ENDIF
IF ( defineEventCondition )
, defineEventCondition
[47] IMPLICIT CS-DefineEventCondition-Request
ELSE
, defineEventCondition
[47] IMPLICIT NULL
ENDIF
IF ( alterEventConditionMonitoring )
, alterEventConditionMonitoring
[51] IMPLICIT CS-AlterEventConditionMonitoring-Request
ELSE
, alterEventConditionMonitoring
[51] IMPLICIT NULL
ENDIF
IF ( defineEventEnrollment )
, defineEventEnrollment
[57] IMPLICIT CS-DefineEventEnrollment-Request
ELSE
, defineEventEnrollment
[57] IMPLICIT NULL
ENDIF
IF ( alterEventEnrollment )
, alterEventEnrollment
[59] IMPLICIT CS-AlterEventEnrollment-Request
ELSE
, alterEventEnrollment
[59] IMPLICIT NULL
ENDIF
}
Unconfirmed-PDU ::= SEQUENCE {
service UnconfirmedService,
...
IF ( cspi )
, service-ext [79] Unconfirmed-Detail OPTIONAL
ENDIF
-- shall not be transmitted if value is the value
-- of a tagged type derived from NULL
}
UnconfirmedService ::= CHOICE {
IF (informationReport )
informationReport
[0] IMPLICIT InformationReport
ELSE
informationReport
[0] IMPLICIT NULL
ENDIF
IF ( unsolicitedStatus )
, unsolicitedStatus
[1] IMPLICIT UnsolicitedStatus
ELSE
, unsolicitedStatus
[1] IMPLICIT NULL
ENDIF
IF ( eventNotification )
, eventNotification
[2] IMPLICIT EventNotification
ELSE
, eventNotification
[2] IMPLICIT NULL
ENDIF
}
Unconfirmed-Detail ::= CHOICE {
-- this choice shall be selected if the tag value of the
-- UnconfirmedService does not match any of the tags below
otherRequests NULL
IF ( cspi )
, eventNotification
[2] IMPLICIT CS-EventNotification
ENDIF
}
Confirmed-ResponsePDU ::= SEQUENCE {
invokeID Unsigned32,
service ConfirmedServiceResponse,
...
IF ( csr cspi ),
service-ext [79] Response-Detail OPTIONAL
ENDIF
-- shall not be transmitted if value is the value
-- of a tagged type derived from NULL
}
ConfirmedServiceResponse ::= CHOICE {
IF ( status )
status
[0] IMPLICIT Status-Response
ELSE
status
[0] IMPLICIT RejectPDU
ENDIF
IF ( getNameList )
, getNameList
[1] IMPLICIT GetNameList-Response
ELSE
, getNameList
[1] IMPLICIT RejectPDU
ENDIF
IF ( identify )
, identify
[2] IMPLICIT Identify-Response
ELSE
, identify
[2] IMPLICIT RejectPDU
ENDIF
IF ( rename )
, rename
[3] IMPLICIT Rename-Response
ELSE
, rename
[3] IMPLICIT RejectPDU
ENDIF
IF ( read )
, read
[4] IMPLICIT Read-Response
ELSE
, read
[4] IMPLICIT RejectPDU
ENDIF
IF ( write )
, write
[5] IMPLICIT Write-Response
ELSE
, write
[5] IMPLICIT RejectPDU
ENDIF
IF ( vnam vadr )
IF ( getVariableAccessAttributes )
, getVariableAccessAttributes
[6] IMPLICIT GetVariableAccessAttributes-Response
ELSE
, getVariableAccessAttributes
[6] IMPLICIT RejectPDU
ENDIF
ELSE
, getVariableAccessAttributes
[6] IMPLICIT RejectPDU
ENDIF
IF ( vnam )
IF ( vadr )
IF ( defineNamedVariable )
, defineNamedVariable
[7] IMPLICIT DefineNamedVariable-Response
ELSE
, defineNamedVariable
[7] IMPLICIT RejectPDU
ENDIF
ELSE
, defineNamedVariable
[7] IMPLICIT RejectPDU
ENDIF
ELSE
, defineNamedVariable
[7] IMPLICIT RejectPDU
ENDIF
IF ( vsca )
-- choice [8] is reserved for a service defined in Annex E
IF ( defineScatteredAccess )
, defineScatteredAccess
[8] IMPLICIT DefineScatteredAccess-Response
ELSE
, defineScatteredAccess
[8] IMPLICIT RejectPDU
ENDIF
-- choice [9] is reserved for a service defined in Annex E
IF ( getScatteredAccessAttributes )
, getScatteredAccessAttributes
[9] IMPLICIT GetScatteredAccessAttributes-Response
ELSE
, getScatteredAccessAttributes
[9] IMPLICIT RejectPDU
ENDIF
ELSE
, defineScatteredAccess
[8] IMPLICIT RejectPDU,
getScatteredAccessAttributes
[9] IMPLICIT RejectPDU
ENDIF
IF ( vnam )
IF ( deleteVariableAccess )
, deleteVariableAccess
[10] IMPLICIT DeleteVariableAccess-Response
ELSE
, deleteVariableAccess
[10] IMPLICIT RejectPDU
ENDIF
ELSE
, deleteVariableAccess
[10] IMPLICIT RejectPDU
ENDIF
IF ( vlis )
IF ( vnam )
IF ( defineNamedVariableList )
, defineNamedVariableList
[11] IMPLICIT DefineNamedVariableList-Response
ELSE
, defineNamedVariableList
[11] IMPLICIT RejectPDU
ENDIF
IF ( getNamedVariableListAttributes )
, getNamedVariableListAttributes
[12] IMPLICIT GetNamedVariableListAttributes-Response
ELSE
, getNamedVariableListAttributes
[12] IMPLICIT RejectPDU
ENDIF
IF ( deleteNamedVariableList )
, deleteNamedVariableList
[13] IMPLICIT DeleteNamedVariableList-Response
ELSE
, deleteNamedVariableList
[13] IMPLICIT RejectPDU
ENDIF
ELSE
, defineNamedVariableList
[11] IMPLICIT RejectPDU,
getNamedVariableListAttributes
[12] IMPLICIT RejectPDU,
deleteNamedVariableList
[13] IMPLICIT RejectPDU
ENDIF
ELSE
, defineNamedVariableList
[11] IMPLICIT RejectPDU,
getNamedVariableListAttributes
[12] IMPLICIT RejectPDU,
deleteNamedVariableList
[13] IMPLICIT RejectPDU
ENDIF
IF ( vnam )
IF ( defineNamedType )
, defineNamedType
[14] IMPLICIT DefineNamedType-Response
ELSE
, defineNamedType
[14] IMPLICIT RejectPDU
ENDIF
IF ( getNamedTypeAttributes )
, getNamedTypeAttributes
[15] IMPLICIT GetNamedTypeAttributes-Response
ELSE
, getNamedTypeAttributes
[15] IMPLICIT RejectPDU
ENDIF
IF ( deleteNamedType )
, deleteNamedType
[16] IMPLICIT DeleteNamedType-Response
ELSE
, deleteNamedType
[16] IMPLICIT RejectPDU
ENDIF
ELSE
, defineNamedType
[14] IMPLICIT RejectPDU,
getNamedTypeAttributes
[15] IMPLICIT RejectPDU,
deleteNamedType
[16] IMPLICIT RejectPDU
ENDIF
IF ( input )
, input
[17] IMPLICIT Input-Response
ELSE
, input
[17] IMPLICIT RejectPDU
ENDIF
IF ( output )
, output
[18] IMPLICIT Output-Response
ELSE
, output
[18] IMPLICIT RejectPDU
ENDIF
IF ( takeControl )
, takeControl
[19] TakeControl-Response
ELSE
, takeControl
[19] IMPLICIT RejectPDU
ENDIF
IF ( relinquishControl )
, relinquishControl
[20] IMPLICIT RelinquishControl-Response
ELSE
, relinquishControl
[20] IMPLICIT RejectPDU
ENDIF
IF ( defineSemaphore )
, defineSemaphore
[21] IMPLICIT DefineSemaphore-Response
ELSE
, defineSemaphore
[21] IMPLICIT RejectPDU
ENDIF
IF ( deleteSemaphore )
, deleteSemaphore
[22] IMPLICIT DeleteSemaphore-Response
ELSE
, deleteSemaphore
[22] IMPLICIT RejectPDU
ENDIF
IF ( reportSemaphoreStatus )
, reportSemaphoreStatus
[23] IMPLICIT ReportSemaphoreStatus-Response
ELSE
, reportSemaphoreStatus
[23] IMPLICIT RejectPDU
ENDIF
IF ( reportPoolSemaphoreStatus )
, reportPoolSemaphoreStatus
[24] IMPLICIT ReportPoolSemaphoreStatus-Response
ELSE
, reportPoolSemaphoreStatus
[24] IMPLICIT RejectPDU
ENDIF
IF ( reportSemaphoreEntryStatus )
, reportSemaphoreEntryStatus
[25] IMPLICIT ReportSemaphoreEntryStatus-Response
ELSE
, reportSemaphoreEntryStatus
[25] IMPLICIT RejectPDU
ENDIF
IF ( initiateDownloadSequence )
, initiateDownloadSequence
[26] IMPLICIT InitiateDownloadSequence-Response,
downloadSegment
[27] IMPLICIT DownloadSegment-Response,
terminateDownloadSequence
[28] IMPLICIT TerminateDownloadSequence-Response
ELSE
, initiateDownloadSequence
[26] IMPLICIT RejectPDU,
downloadSegment
[27] IMPLICIT RejectPDU,
terminateDownloadSequence
[28] IMPLICIT RejectPDU
ENDIF
IF ( initiateUploadSequence )
, initiateUploadSequence
[29] IMPLICIT InitiateUploadSequence-Response,
uploadSegment
[30] IMPLICIT UploadSegment-Response,
terminateUploadSequence
[31] IMPLICIT TerminateUploadSequence-Response
ELSE
, initiateUploadSequence
[29] IMPLICIT RejectPDU,
uploadSegment
[30] IMPLICIT RejectPDU,
terminateUploadSequence
[31] IMPLICIT RejectPDU
ENDIF
IF ( requestDomainDownload )
, requestDomainDownload
[32] IMPLICIT RequestDomainDownload-Response
ELSE
, requestDomainDownload
[32] IMPLICIT RejectPDU
ENDIF
IF ( requestDomainUpload )
, requestDomainUpload
[33] IMPLICIT RequestDomainUpload-Response
ELSE
, requestDomainUpload
[33] IMPLICIT RejectPDU
ENDIF
IF ( loadDomainContent )
, loadDomainContent
[34] IMPLICIT LoadDomainContent-Response
ELSE
, loadDomainContent
[34] IMPLICIT RejectPDU
ENDIF
IF ( storeDomainContent )
, storeDomainContent
[35] IMPLICIT StoreDomainContent-Response
ELSE
, storeDomainContent
[35] IMPLICIT RejectPDU
ENDIF
IF ( deleteDomain )
, deleteDomain
[36] IMPLICIT DeleteDomain-Response
ELSE
, deleteDomain
[36] IMPLICIT RejectPDU
ENDIF
IF ( getDomainAttributes )
, getDomainAttributes
[37] IMPLICIT GetDomainAttributes-Response
ELSE
, getDomainAttributes
[37] IMPLICIT RejectPDU
ENDIF
IF ( createProgramInvocation )
, createProgramInvocation
[38] IMPLICIT CreateProgramInvocation-Response
ELSE
, createProgramInvocation
[38] IMPLICIT RejectPDU
ENDIF
IF ( deleteProgramInvocation )
, deleteProgramInvocation
[39] IMPLICIT DeleteProgramInvocation-Response
ELSE
, deleteProgramInvocation
[39] IMPLICIT RejectPDU
ENDIF
IF ( start )
, start
[40] IMPLICIT Start-Response
ELSE
, start
[40] IMPLICIT RejectPDU
ENDIF
IF ( stop )
, stop
[41] IMPLICIT Stop-Response
ELSE
, stop
[41] IMPLICIT RejectPDU
ENDIF
IF ( resume )
, resume
[42] IMPLICIT Resume-Response
ELSE
, resume
[42] IMPLICIT RejectPDU
ENDIF
IF ( reset )
, reset
[43] IMPLICIT Reset-Response
ELSE
, reset
[43] IMPLICIT RejectPDU
ENDIF
IF ( kill )
, kill
[44] IMPLICIT Kill-Response
ELSE
, kill
[44] IMPLICIT RejectPDU
ENDIF
IF ( getProgramInvocationAttributes )
, getProgramInvocationAttributes
[45] IMPLICIT GetProgramInvocationAttributes-Response
ELSE
, getProgramInvocationAttributes
[45] IMPLICIT RejectPDU
ENDIF
IF ( obtainFile )
, obtainFile
[46] IMPLICIT ObtainFile-Response
ELSE
, obtainFile
[46] IMPLICIT RejectPDU
ENDIF
IF ( defineEventCondition )
, defineEventCondition
[47] IMPLICIT DefineEventCondition-Response
ELSE
, defineEventCondition
[47] IMPLICIT RejectPDU
ENDIF
IF ( deleteEventCondition )
, deleteEventCondition
[48] IMPLICIT DeleteEventCondition-Response
ELSE
, deleteEventCondition
[48] IMPLICIT RejectPDU
ENDIF
IF ( getEventConditionAttributes )
, getEventConditionAttributes
[49] IMPLICIT GetEventConditionAttributes-Response
ELSE
, getEventConditionAttributes
[49] IMPLICIT RejectPDU
ENDIF
IF ( reportEventConditionStatus )
, reportEventConditionStatus
[50] IMPLICIT ReportEventConditionStatus-Response
ELSE
, reportEventConditionStatus
[50] IMPLICIT RejectPDU
ENDIF
IF ( alterEventConditionMonitoring )
, alterEventConditionMonitoring
[51] IMPLICIT AlterEventConditionMonitoring-Response
ELSE
, alterEventConditionMonitoring
[51] IMPLICIT RejectPDU
ENDIF
IF ( triggerEvent )
, triggerEvent
[52] IMPLICIT TriggerEvent-Response
ELSE
, triggerEvent
[52] IMPLICIT RejectPDU
ENDIF
IF ( defineEventAction )
, defineEventAction
[53] IMPLICIT DefineEventAction-Response
ELSE
, defineEventAction
[53] IMPLICIT RejectPDU
ENDIF
IF ( deleteEventAction )
, deleteEventAction
[54] IMPLICIT DeleteEventAction-Response
ELSE
, deleteEventAction
[54] IMPLICIT RejectPDU
ENDIF
IF ( getEventActionAttributes )
, getEventActionAttributes
[55] IMPLICIT GetEventActionAttributes-Response
ELSE
, getEventActionAttributes
[55] IMPLICIT RejectPDU
ENDIF
IF ( reportEventActionStatus )
, reportEventActionStatus
[56] IMPLICIT ReportEventActionStatus-Response
ELSE
, reportEventActionStatus
[56] IMPLICIT RejectPDU
ENDIF
IF ( defineEventEnrollment )
, defineEventEnrollment
[57] IMPLICIT DefineEventEnrollment-Response
ELSE
, defineEventEnrollment
[57] IMPLICIT RejectPDU
ENDIF
IF ( deleteEventEnrollment )
, deleteEventEnrollment
[58] IMPLICIT DeleteEventEnrollment-Response
ELSE
, deleteEventEnrollment
[58] IMPLICIT RejectPDU
ENDIF
IF ( alterEventEnrollment )
, alterEventEnrollment
[59] IMPLICIT AlterEventEnrollment-Response
ELSE
, alterEventEnrollment
[59] IMPLICIT RejectPDU
ENDIF
IF ( reportEventEnrollmentStatus )
, reportEventEnrollmentStatus
[60] IMPLICIT ReportEventEnrollmentStatus-Response
ELSE
, reportEventEnrollmentStatus
[60] IMPLICIT RejectPDU
ENDIF
IF ( getEventEnrollmentAttributes )
, getEventEnrollmentAttributes
[61] IMPLICIT GetEventEnrollmentAttributes-Response
ELSE
, getEventEnrollmentAttributes
[61] IMPLICIT RejectPDU
ENDIF
IF ( acknowledgeEventNotification )
, acknowledgeEventNotification
[62] IMPLICIT AcknowledgeEventNotification-Response
ELSE
, acknowledgeEventNotification
[62] IMPLICIT RejectPDU
ENDIF
IF ( getAlarmSummary )
, getAlarmSummary
[63] IMPLICIT GetAlarmSummary-Response
ELSE
, getAlarmSummary
[63] IMPLICIT RejectPDU
ENDIF
IF ( getAlarmEnrollmentSummary )
, getAlarmEnrollmentSummary
[64] IMPLICIT GetAlarmEnrollmentSummary-Response
ELSE
, getAlarmEnrollmentSummary
[64] IMPLICIT RejectPDU
ENDIF
IF ( readJournal )
, readJournal
[65] IMPLICIT ReadJournal-Response
ELSE
, readJournal
[65] IMPLICIT RejectPDU
ENDIF
IF ( writeJournal )
, writeJournal
[66] IMPLICIT WriteJournal-Response
ELSE
, writeJournal
[66] IMPLICIT RejectPDU
ENDIF
IF ( initializeJournal )
, initializeJournal
[67] IMPLICIT InitializeJournal-Response
ELSE
, initializeJournal
[67] IMPLICIT RejectPDU
ENDIF
IF ( reportJournalStatus )
, reportJournalStatus
[68] IMPLICIT ReportJournalStatus-Response
ELSE
, reportJournalStatus
[68] IMPLICIT RejectPDU
ENDIF
IF ( createJournal )
, createJournal
[69] IMPLICIT CreateJournal-Response
ELSE
, createJournal
[69] IMPLICIT RejectPDU
ENDIF
IF ( deleteJournal )
, deleteJournal
[70] IMPLICIT DeleteJournal-Response
ELSE
, deleteJournal
[70] IMPLICIT RejectPDU
ENDIF
IF ( getCapabilityList )
, getCapabilityList
[71] IMPLICIT GetCapabilityList-Response
ELSE
, getCapabilityList
[71] IMPLICIT RejectPDU
ENDIF
-- choices [72] through [77] are reserved for use by services
-- defined in annex D
IF ( fileOpen )
, fileOpen
[72] IMPLICIT FileOpen-Response
ELSE
, fileOpen
[72] IMPLICIT RejectPDU
ENDIF
IF ( fileRead )
, fileRead
[73] IMPLICIT FileRead-Response
ELSE
, fileRead
[73] IMPLICIT RejectPDU
ENDIF
IF ( fileClose )
, fileClose
[74] IMPLICIT FileClose-Response
ELSE
, fileClose
[74] IMPLICIT RejectPDU
ENDIF
IF ( fileRename )
, fileRename
[75] IMPLICIT FileRename-Response
ELSE
, fileRename
[75] IMPLICIT RejectPDU
ENDIF
IF ( fileDelete )
, fileDelete
[76] IMPLICIT FileDelete-Response
ELSE
, fileDelete
[76] IMPLICIT RejectPDU
ENDIF
IF ( fileDirectory )
, fileDirectory
[77] IMPLICIT FileDirectory-Response
ELSE
, fileDirectory
[77] IMPLICIT RejectPDU
ENDIF
,...
IF ( csr cspi )
, additionalService
[78] AdditionalService-Response
-- choice [79] is reserved
IF ( getDataExchangeAttributes ),
, getDataExchangeAttributes
[80] GetDataExchangeAttributes-Response
-- Shall not appear in minor version 1
ENDIF
IF ( exchangeData ),
, exchangeData
[81] IMPLICIT ExchangeData-Response
-- Shall not appear in minor version 1
ENDIF
IF ( defineAccessControlList ),
, defineAccessControlList
[82] IMPLICIT DefineAccessControlList-Response
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( getAccessControlListAttributes ),
, getAccessControlListAttributes
[83] IMPLICIT GetAccessControlListAttributes-Response
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( reportAccessControlledObjects ),
, reportAccessControlledObjects
[84] IMPLICIT ReportAccessControlledObjects-Response
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( deleteAccessControlList ),
, deleteAccessControlList
[85] IMPLICIT DeleteAccessControlList-Response
-- Shall not appear in minor version 1 or 2
ENDIF
IF ( changeAccessControl ),
, changeAccessControl
[86] IMPLICIT ChangeAccessControl-Response
-- Shall not appear in minor version 1 or 2
ENDIF
,...
}
AdditionalService-Response ::= CHOICE {
IF ( csr )
IF ( vMDStop )
vMDStop
[0] IMPLICIT VMDStop-Response
ELSE
vMDStop
[0] IMPLICIT RejectPDU
ENDIF
IF ( vMDReset )
, vMDReset
[1] IMPLICIT VMDReset-Response
ELSE
, vMDReset
[1] IMPLICIT RejectPDU
ENDIF
IF ( select )
, select
[2] IMPLICIT Select-Response
ELSE
, select
[2] IMPLICIT RejectPDU
ENDIF
IF ( alterProgramInvocationAttributes )
, alterPI
[3] IMPLICIT AlterProgramInvocationAttributes-Response
ELSE
, alterPI
[3] IMPLICIT RejectPDU
ENDIF
ELSE
, vMDStop
[0] IMPLICIT RejectPDU,
vMDReset
[1] IMPLICIT RejectPDU,
select
[2] IMPLICIT RejectPDU,
alterPI
[3] IMPLICIT RejectPDU
ENDIF
IF ( cspi )
IF ( initiateUnitControlLoad )
, initiateUCLoad
[4] IMPLICIT InitiateUnitControlLoad-Response
ELSE
, initiateUCLoad
[4] IMPLICIT RejectPDU
ENDIF
IF ( unitControlLoadSegment )
, uCLoad
[5] IMPLICIT UnitControlLoadSegment-Response
ELSE
, uCLoad
[5] IMPLICIT RejectPDU
ENDIF
IF ( unitControlUpload )
, uCUpload
[6] IMPLICIT UnitControlUpload-Response
ELSE
, uCUpload
[6] IMPLICIT RejectPDU
ENDIF
IF ( startUnitControl )
, startUC
[7] IMPLICIT StartUnitControl-Response
ELSE
, startUC
[7] IMPLICIT RejectPDU
ENDIF
IF ( stopUnitControl )
, stopUC
[8] IMPLICIT StopUnitControl-Response
ELSE
, stopUC
[8] IMPLICIT RejectPDU
ENDIF
IF ( createUnitControl )
, createUC
[9] IMPLICIT CreateUnitControl-Response
ELSE
, createUC
[9] IMPLICIT RejectPDU
ENDIF
IF ( addToUnitControl )
, addToUC
[10] IMPLICIT AddToUnitControl-Response
ELSE
, addToUC
[10] IMPLICIT RejectPDU
ENDIF
IF ( removeFromUnitControl )
, removeFromUC
[11] IMPLICIT RemoveFromUnitControl-Response
ELSE
, removeFromUC
[11] IMPLICIT RejectPDU
ENDIF
IF ( getUnitControlAttributes )
, getUCAttributes
[12] IMPLICIT GetUnitControlAttributes-Response
ELSE
, getUCAttributes
[12] IMPLICIT RejectPDU
ENDIF
IF ( loadUnitControlFromFile )
, loadUCFromFile
[13] IMPLICIT LoadUnitControlFromFile-Response
ELSE
, loadUCFromFile
[13] IMPLICIT RejectPDU
ENDIF
IF ( storeUnitControlToFile )
, storeUCToFile
[14] IMPLICIT StoreUnitControlToFile-Response
ELSE
, storeUCToFile
[14] IMPLICIT RejectPDU
ENDIF
IF ( deleteUnitControl )
, deleteUC
[15] IMPLICIT DeleteUnitControl-Response
ELSE
, deleteUC
[15] IMPLICIT RejectPDU
ENDIF
IF ( defineEventConditionList )
, defineECL
[16] IMPLICIT DefineEventConditionList-Response
ELSE
, defineECL
[16] IMPLICIT RejectPDU
ENDIF
IF ( deleteEventConditionList )
, deleteECL
[17] IMPLICIT DeleteEventConditionList-Response
ELSE
, deleteECL
[17] IMPLICIT RejectPDU
ENDIF
IF ( addEventConditionListReference )
, addECLReference
[18] IMPLICIT AddEventConditionListReference-Response
ELSE
, addECLReference
[18] IMPLICIT RejectPDU
ENDIF
IF ( removeEventConditionListReference )
, removeECLReference
[19] IMPLICIT RemoveEventConditionListReference-Response
ELSE
, removeECLReference
[19] IMPLICIT RejectPDU
ENDIF
IF ( getEventConditionListAttributes )
, getECLAttributes
[20] IMPLICIT GetEventConditionListAttributes-Response
ELSE
, getECLAttributes
[20] IMPLICIT RejectPDU
ENDIF
IF ( reportEventConditionListStatus )
, reportECLStatus
[21] IMPLICIT ReportEventConditionListStatus-Response
ELSE
, reportECLStatus
[21] IMPLICIT RejectPDU
ENDIF
IF ( alterEventConditionListMonitoring )
, alterECLMonitoring
[22] IMPLICIT AlterEventConditionListMonitoring-Response
ELSE
, alterECLMonitoring
[22] IMPLICIT RejectPDU
ENDIF
ELSE
, initiateUCLoad
[4] IMPLICIT RejectPDU,
uCLoad
[5] IMPLICIT RejectPDU,
uCUpload
[6] IMPLICIT RejectPDU,
startUC
[7] IMPLICIT RejectPDU,
stopUC
[8] IMPLICIT RejectPDU,
createUC
[9] IMPLICIT RejectPDU,
addToUC
[10] IMPLICIT RejectPDU,
removeFromUC
[11] IMPLICIT RejectPDU,
getUCAttributes
[12] IMPLICIT RejectPDU,
loadUCFromFile
[13] IMPLICIT RejectPDU,
storeUCToFile
[14] IMPLICIT RejectPDU,
deleteUC
[15] IMPLICIT RejectPDU,
defineECL
[16] IMPLICIT RejectPDU,
deleteECL
[17] IMPLICIT RejectPDU,
addECLReference
[18] IMPLICIT RejectPDU,
removeECLReference
[19] IMPLICIT RejectPDU,
getECLAttributes
[20] IMPLICIT RejectPDU,
reportECLStatus
[21] IMPLICIT RejectPDU,
alterECLMonitoring
[22] IMPLICIT RejectPDU
ENDIF
}
Response-Detail ::= CHOICE {
-- this choice shall be selected if the tag value of the
-- ConfirmedServiceResponse does not match any of the tags below
otherRequests NULL
IF ( status )
, status
[0] CS-Status-Response
ENDIF
IF ( getProgramInvocationAttributes )
, getProgramInvocationAttributes
[45] IMPLICIT CS-GetProgramInvocationAttributes-Response
ENDIF
IF ( getEventConditionAttributes )
, getEventConditionAttributes
[49] IMPLICIT CS-GetEventConditionAttributes-Response
ENDIF
}
Confirmed-ErrorPDU ::= SEQUENCE {
invokeID [0] IMPLICIT Unsigned32,
IF ( attachToEventCondition attachToSemaphore )
modifierPosition [1] IMPLICIT Unsigned32 OPTIONAL,
ENDIF
serviceError [2] IMPLICIT ServiceError
}
ServiceError ::= SEQUENCE {
errorClass [0] CHOICE {
vmd-state [0] IMPLICIT INTEGER {
other (0),
vmd-state-conflict (1),
vmd-operational-problem (2),
domain-transfer-problem (3),
state-machine-id-invalid (4)
} (0..4),
application-reference [1] IMPLICIT INTEGER {
other (0),
application-unreachable (1),
connection-lost (2),
application-reference-invalid (3),
context-unsupported (4)
} (0..4),
definition [2] IMPLICIT INTEGER {
other (0),
object-undefined (1),
invalid-address (2),
type-unsupported (3),
type-inconsistent (4),
object-exists (5),
object-attribute-inconsistent (6)
} (0..6),
resource [3] IMPLICIT INTEGER {
other (0),
memory-unavailable (1),
processor-resource-unavailable (2),
mass-storage-unavailable (3),
capability-unavailable (4),
capability-unknown (5)
} (0..5),
service [4] IMPLICIT INTEGER {
other (0),
primitives-out-of-sequence (1),
object-state-conflict (2),
-- Value 3 reserved for further definition
continuation-invalid (4),
object-constraint-conflict (5)
} (0..5),
service-preempt [5] IMPLICIT INTEGER {
other (0),
timeout (1),
deadlock (2),
cancel (3)
} (0..3),
time-resolution [6] IMPLICIT INTEGER {
other (0),
unsupportable-time-resolution (1)
} (0..1),
access [7] IMPLICIT INTEGER {
other (0),
object-access-unsupported (1),
object-non-existent (2),
object-access-denied (3),
object-invalidated (4)
} (0..4),
initiate [8] IMPLICIT INTEGER {
other (0),
-- Values 1 and 2 are reserved for further definition
max-services-outstanding-calling-insufficient (3),
max-services-outstanding-called-insufficient (4),
service-CBB-insufficient (5),
parameter-CBB-insufficient (6),
nesting-level-insufficient (7)
} (0..7),
conclude [9] IMPLICIT INTEGER {
other (0),
further-communication-required (1)
} (0..1)
IF ( cancel )
, cancel [10] IMPLICIT INTEGER {
other (0),
invoke-id-unknown (1),
cancel-not-possible (2)
} (0..2)
ELSE
, cancel [10] IMPLICIT NULL
ENDIF
IF ( fileOpen fileClose fileRead fileRename fileDelete fileDirectory obtainFile )
, file [11] IMPLICIT INTEGER {
other (0),
filename-ambiguous (1),
file-busy (2),
filename-syntax-error (3),
content-type-invalid (4),
position-invalid (5),
file-access-denied (6),
file-non-existent (7),
duplicate-filename (8),
insufficient-space-in-filestore (9)
} (0..9)
ELSE
, file [11] IMPLICIT NULL
ENDIF
, others [12] IMPLICIT INTEGER
} ,
additionalCode [1] IMPLICIT INTEGER OPTIONAL,
additionalDescription [2] IMPLICIT VisibleString OPTIONAL,
serviceSpecificInfo [3] CHOICE {
IF ( obtainFile )
obtainFile [0] IMPLICIT ObtainFile-Error
ELSE
obtainFile [0] IMPLICIT NULL
ENDIF
IF ( start )
, start [1] IMPLICIT Start-Error
ELSE
, start [1] IMPLICIT NULL
ENDIF
IF ( stop )
, stop [2] IMPLICIT Stop-Error
ELSE
, stop [2] IMPLICIT NULL
ENDIF
IF ( resume )
, resume [3] IMPLICIT Resume-Error
ELSE
, resume [3] IMPLICIT NULL
ENDIF
IF ( reset )
, reset [4] IMPLICIT Reset-Error
ELSE
, reset [4] IMPLICIT NULL
ENDIF
IF ( deleteVariableAccess )
, deleteVariableAccess [5] IMPLICIT DeleteVariableAccess-Error
ELSE
, deleteVariableAccess [5] IMPLICIT NULL
ENDIF
IF ( deleteNamedVariableList )
, deleteNamedVariableList [6] IMPLICIT DeleteNamedVariableList-Error
ELSE
, deleteNamedVariableList [6] IMPLICIT NULL
ENDIF
IF ( deleteNamedType )
, deleteNamedType [7] IMPLICIT DeleteNamedType-Error
ELSE
, deleteNamedType [7] IMPLICIT NULL
ENDIF
IF ( defineEventEnrollment )
, defineEventEnrollment-Error [8] DefineEventEnrollment-Error
ELSE
, defineEventEnrollment-Error [8] IMPLICIT NULL
ENDIF
-- [9] Reserved for use by annex D
IF ( fileRename )
, fileRename [9] IMPLICIT FileRename-Error
ELSE
, fileRename [9] IMPLICIT NULL
ENDIF
IF ( csr cspi )
, additionalService [10] AdditionalService-Error
ELSE
, additionalService [10] IMPLICIT NULL
ENDIF
IF ( changeAccessControl )
, changeAccessControl [11] IMPLICIT ChangeAccessControl-Error
ELSE
changeAccessControl 11] IMPLICIT NULL
ENDIF
} OPTIONAL
}
AdditionalService-Error ::= CHOICE {
IF ( defineEventConditionList )
defineEcl [0] DefineEventConditionList-Error
ELSE
defineEcl [0] IMPLICIT NULL
ENDIF
IF ( addEventConditionListReference )
, addECLReference [1] AddEventConditionListReference-Error
ELSE
, addECLReference [1] IMPLICIT NULL
ENDIF
IF ( removeEventConditionListReference )
, removeECLReference [2] RemoveEventConditionListReference-Error
ELSE
, removeECLReference [2] IMPLICIT NULL
ENDIF
IF ( initiateUnitControlLoad )
, initiateUC [3] InitiateUnitControl-Error
ELSE
, initiateUC [3] IMPLICIT NULL
ENDIF
IF ( startUnitControl )
, startUC [4] IMPLICIT StartUnitControl-Error
ELSE
, startUC [4] IMPLICIT NULL
ENDIF
IF ( stopUnitControl )
, stopUC [5] IMPLICIT StopUnitControl-Error
ELSE
, stopUC [5] IMPLICIT NULL
ENDIF
IF ( deleteUnitControl )
, deleteUC [6] DeleteUnitControl-Error
ELSE
, deleteUC [6] IMPLICIT NULL
ENDIF
IF ( loadUnitControlFromFile )
, loadUCFromFile [7] LoadUnitControlFromFile-Error
ELSE
, loadUCFromFile [7] IMPLICIT NULL
ENDIF
}
TimeOfDay ::= OCTET STRING (SIZE(4|6))
maxIdentifier INTEGER ::= 32
Identifier ::=
IF (char)
UTF8String (SIZE(1..maxIdentifier))
ELSE
VisibleString ( FROM
("A"|"a"|"B"|"b"|"C"|"c"|"D"|"d"|"E"|"e"|"F"|"f"|
"G"|"g"|"H"|"h"|"I"|"i"|"J"|"j"|"K"|"k"|"L"|"l"|
"M"|"m"|"N"|"n"|"O"|"o"|"P"|"p"|"Q"|"q"|"R"|"r"|
"S"|"s"|"T"|"t"|"U"|"u"|"V"|"v"|"W"|"w"|"X"|"x"|
"Y"|"y"|"Z"|"z"|"$"|"_"|"0"|"1"|"2"|"3"|"4"|"5"|
"6"|"7"|"8"|"9") ) (SIZE(1..maxIdentifier))
ENDIF
Integer8 ::= INTEGER(-128..127) -- range -128 <= i <= 127
Integer16 ::= INTEGER(-32768..32767) -- range -32,768 <= i <= 32,767
Integer32 ::= INTEGER(-2147483648..2147483647) -- range -2**31 <= i <= 2**31 - 1
Unsigned8 ::= INTEGER(0..127) -- range 0 <= i <= 127
Unsigned16 ::= INTEGER(0..32767) -- range 0 <= i <= 32767
Unsigned32 ::= INTEGER(0..2147483647) -- range 0 <= i <= 2**31 - 1
ObjectName ::= CHOICE {
vmd-specific [0] IMPLICIT Identifier,
domain-specific [1] IMPLICIT SEQUENCE {
domainID Identifier,
itemID Identifier
},
aa-specific [2] IMPLICIT Identifier
}
ObjectClass ::= CHOICE {
basicObjectClass [0] IMPLICIT INTEGER {
IF ( vnam )
namedVariable (0)
ENDIF
-- value 1 is reserved for definition in Annex E
IF ( vsca )
, scatteredAccess (1)
ENDIF
IF ( vlis )
, namedVariableList (2)
ENDIF
IF ( vnam )
, namedType (3)
ENDIF
, semaphore (4),
eventCondition (5),
eventAction (6),
eventEnrollment (7),
journal (8),
domain (9),
programInvocation (10),
operatorStation (11),
dataExchange (12),
-- Shall not appear in minor version 1
accessControlList (13)
-- Shall not appear in minor version 1 or 2
} (0..13),
...
IF ( cspi )
, csObjectClass [1] IMPLICIT INTEGER {
eventConditionList (0),
unitControl (1) } (0..1)
ENDIF
}
MMSString ::=
IF ( char )
UTF8String
ELSE
VisibleString
ENDIF
MMS255String ::=
IF ( char )
UTF8String (SIZE(1..255))
ELSE
VisibleString (SIZE(1..255))
ENDIF
FileName ::= SEQUENCE OF GraphicString
Initiate-RequestPDU ::= SEQUENCE {
localDetailCalling [0] IMPLICIT Integer32 OPTIONAL,
proposedMaxServOutstandingCalling [1] IMPLICIT Integer16,
proposedMaxServOutstandingCalled [2] IMPLICIT Integer16,
proposedDataStructureNestingLevel [3] IMPLICIT Integer8 OPTIONAL,
initRequestDetail [4] IMPLICIT SEQUENCE {
proposedVersionNumber [0] IMPLICIT Integer16,
proposedParameterCBB [1] IMPLICIT ParameterSupportOptions,
servicesSupportedCalling [2] IMPLICIT ServiceSupportOptions ,
...
IF (csr cspi)
, additionalSupportedCalling [3] IMPLICIT AdditionalSupportOptions
ENDIF
IF (cspi)
, additionalCbbSupportedCalling [4] IMPLICIT AdditionalCBBOptions,
privilegeClassIdentityCalling [5] IMPLICIT VisibleString
ENDIF
}
}
Initiate-ResponsePDU ::= SEQUENCE {
localDetailCalled [0] IMPLICIT Integer32 OPTIONAL,
negotiatedMaxServOutstandingCalling [1] IMPLICIT Integer16,
negotiatedMaxServOutstandingCalled [2] IMPLICIT Integer16,
negotiatedDataStructureNestingLevel [3] IMPLICIT Integer8 OPTIONAL,
initResponseDetail [4] IMPLICIT SEQUENCE {
negotiatedVersionNumber [0] IMPLICIT Integer16,
negotiatedParameterCBB [1] IMPLICIT ParameterSupportOptions,
servicesSupportedCalled [2] IMPLICIT ServiceSupportOptions,
...
IF (csr cspi)
, additionalSupportedCalled [3] IMPLICIT AdditionalSupportOptions
ENDIF
IF (cspi )
, additionalCbbSupportedCalled [4] IMPLICIT AdditionalCBBOptions,
privilegeClassIdentityCalled [5] IMPLICIT VisibleString
ENDIF
}
}
Initiate-ErrorPDU ::= ServiceError
Conclude-RequestPDU ::= NULL
Conclude-ResponsePDU ::= NULL
Conclude-ErrorPDU ::= ServiceError
Cancel-RequestPDU ::= Unsigned32 -- originalInvokeID
Cancel-ResponsePDU ::= Unsigned32 -- originalInvokeID
Cancel-ErrorPDU ::= SEQUENCE {
originalInvokeID [0] IMPLICIT Unsigned32,
serviceError [1] IMPLICIT ServiceError
}
RejectPDU ::= SEQUENCE {
originalInvokeID [0] IMPLICIT Unsigned32 OPTIONAL,
rejectReason CHOICE {
confirmed-requestPDU [1] IMPLICIT INTEGER {
other (0),
unrecognized-service (1),
unrecognized-modifier (2),
invalid-invokeID (3),
invalid-argument (4),
invalid-modifier (5),
max-serv-outstanding-exceeded (6),
-- Value 7 reserved for further definition
max-recursion-exceeded (8),
value-out-of-range (9)
} (0..9),
confirmed-responsePDU [2] IMPLICIT INTEGER {
other (0),
unrecognized-service (1),
invalid-invokeID (2),
invalid-result (3),
-- Value 4 reserved for further definition
max-recursion-exceeded (5),
value-out-of-range (6)
} (0..6),
confirmed-errorPDU [3] IMPLICIT INTEGER {
other (0),
unrecognized-service (1),
invalid-invokeID (2),
invalid-serviceError (3),
value-out-of-range (4)
} (0..4),
unconfirmedPDU [4] IMPLICIT INTEGER {
other (0),
unrecognized-service (1),
invalid-argument (2),
max-recursion-exceeded (3),
value-out-of-range (4)
} (0..4),
pdu-error [5] IMPLICIT INTEGER {
unknown-pdu-type (0),
invalid-pdu (1),
illegal-acse-mapping (2)
},
IF ( cancel )
cancel-requestPDU [6] IMPLICIT INTEGER {
other (0),
invalid-invokeID (1)
} (0..1),
cancel-responsePDU [7] IMPLICIT INTEGER {
other (0),
invalid-invokeID (1)
} (0..1),
cancel-errorPDU [8] IMPLICIT INTEGER {
other (0),
invalid-invokeID (1),
invalid-serviceError (2),
value-out-of-range (3)
} (0..3),
ELSE
cancel-requestPDU [6] IMPLICIT NULL,
cancel-responsePDU [7] IMPLICIT NULL,
cancel-errorPDU [8] IMPLICIT NULL,
ENDIF
conclude-requestPDU [9] IMPLICIT INTEGER {
other (0),
invalid-argument (1)
} (0..1),
conclude-responsePDU [10] IMPLICIT INTEGER {
other (0),
invalid-result (1)
} (0..1),
conclude-errorPDU [11] IMPLICIT INTEGER {
other (0),
invalid-serviceError (1),
value-out-of-range (2)
} (0..2)
}
}
DefineAccessControlList-Request ::= SEQUENCE {
accessControlListName [0] IMPLICIT Identifier,
accessControlListElements [1] IMPLICIT SEQUENCE {
readAccessCondition [0] AccessCondition OPTIONAL,
storeAccessCondition [1] AccessCondition OPTIONAL,
writeAccessCondition [2] AccessCondition OPTIONAL,
loadAccessCondition [3] AccessCondition OPTIONAL,
executeAccessCondition [4] AccessCondition OPTIONAL,
deleteAccessCondition [5] AccessCondition OPTIONAL,
editAccessCondition [6] AccessCondition OPTIONAL
}
}
DefineAccessControlList-Response ::= NULL
GetAccessControlListAttributes-Request ::= CHOICE {
accessControlListName [0] IMPLICIT Identifier,
vMD [1] IMPLICIT NULL,
namedObject [2] IMPLICIT SEQUENCE {
objectClass [0] ObjectClass,
objectName [1] ObjectName
}
}
GetAccessControlListAttributes-Response ::= SEQUENCE {
name [0] Identifier,
accessControlListElements [1] IMPLICIT SEQUENCE {
readAccessCondition [0] AccessCondition OPTIONAL,
storeAccessCondition [1] AccessCondition OPTIONAL,
writeAccessCondition [2] AccessCondition OPTIONAL,
loadAccessCondition [3] AccessCondition OPTIONAL,
executeAccessCondition [4] AccessCondition OPTIONAL,
deleteAccessCondition [5] AccessCondition OPTIONAL,
editAccessCondition [6] AccessCondition OPTIONAL
},
vMDuse [2] IMPLICIT BOOLEAN,
references [3] IMPLICIT SEQUENCE OF SEQUENCE {
objectClass [0] ObjectClass,
objectCount [1] IMPLICIT INTEGER
}
IF ( aco )
, accessControlList [4] IMPLICIT Identifier OPTIONAL
-- shall be included if and only if
-- aco has been negotiated
ENDIF
}
ReportAccessControlledObjects-Request ::= SEQUENCE {
accessControlList [0] IMPLICIT Identifier,
objectClass [1] ObjectClass,
continueAfter [2] ObjectName OPTIONAL
}
ReportAccessControlledObjects-Response ::= SEQUENCE {
listOfNames [0] IMPLICIT SEQUENCE OF ObjectName,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT FALSE
}
DeleteAccessControlList-Request ::= Identifier
-- Name of Access Control List Object
DeleteAccessControlList-Response ::= NULL
ChangeAccessControl-Request ::= SEQUENCE {
scopeOfChange CHOICE {
vMDOnly [0] IMPLICIT NULL,
listOfObjects [1] IMPLICIT SEQUENCE {
objectClass [0] ObjectClass,
objectScope [1] CHOICE {
specific [0] IMPLICIT SEQUENCE OF ObjectName,
-- Names of the objects (of class objectClass)
-- whose access is to be changed
aa-specific [1] IMPLICIT NULL,
domain [2] IMPLICIT Identifier,
-- Name of the Domain whose elements
-- are to be changed
vmd [3] IMPLICIT NULL
}
}
},
accessControlListName [2] IMPLICIT Identifier
-- name of the AccessControlList Object that contains
-- the conditions for access control
}
ChangeAccessControl-Response ::= SEQUENCE {
numberMatched [0] IMPLICIT Unsigned32,
numberChanged [1] IMPLICIT Unsigned32
}
ChangeAccessControl-Error ::= Unsigned32
StatusResponse ::= SEQUENCE {
vmdLogicalStatus [0] IMPLICIT INTEGER {
state-changes-allowed (0),
no-state-changes-allowed (1),
limited-services-permitted (2),
support-services-allowed (3)
} (0..3),
vmdPhysicalStatus [1] IMPLICIT INTEGER {
operational (0),
partially-operational (1),
inoperable (2),
needs-commissioning (3)
} (0..3),
localDetail [2] IMPLICIT BIT STRING (SIZE(0..128)) OPTIONAL
}
CS-Status-Response ::= CHOICE {
IF ( csr )
fullResponse SEQUENCE {
operationState [0] IMPLICIT OperationState,
extendedStatus [1] IMPLICIT ExtendedStatus,
extendedStatusMask [2] IMPLICIT ExtendedStatus DEFAULT '1111'B,
selectedProgramInvocation CHOICE {
programInvocation [3] IMPLICIT Identifier,
noneSelected [4] IMPLICIT NULL } }
ENDIF
IF ( csr cspi )
,
ENDIF
IF ( cspi )
noExtraResponse NULL
ENDIF
}
OperationState ::= INTEGER {
idle (0),
loaded (1),
ready (2),
executing (3),
motion-paused (4),
manualInterventionRequired (5) } (0..5)
ExtendedStatus ::= BIT STRING {
safetyInterlocksViolated (0),
anyPhysicalResourcePowerOn (1),
allPhysicalResourcesCalibrated (2),
localControl (3) } (SIZE(4))
Status-Request ::= BOOLEAN -- Extended Derivation
Status-Response ::= StatusResponse
UnsolicitedStatus ::= StatusResponse
GetNameList-Request ::= SEQUENCE {
objectClass [0] ObjectClass,
objectScope [1] CHOICE {
vmdSpecific [0] IMPLICIT NULL,
domainSpecific [1] IMPLICIT Identifier,
aaSpecific [2] IMPLICIT NULL },
continueAfter [2] IMPLICIT Identifier OPTIONAL }
GetNameList-Response ::= SEQUENCE {
listOfIdentifier [0] IMPLICIT SEQUENCE OF Identifier,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE }
Identify-Request ::= NULL
Identify-Response ::= SEQUENCE {
vendorName [0] IMPLICIT MMSString,
modelName [1] IMPLICIT MMSString,
revision [2] IMPLICIT MMSString,
listOfAbstractSyntaxes [3] IMPLICIT SEQUENCE OF OBJECT IDENTIFIER OPTIONAL
}
Rename-Request ::= SEQUENCE {
objectClass [0] ObjectClass,
currentName [1] ObjectName,
newIdentifier [2] IMPLICIT Identifier }
Rename-Response ::= NULL
GetCapabilityList-Request ::= SEQUENCE {
continueAfter MMSString OPTIONAL
}
GetCapabilityList-Response ::= SEQUENCE {
listOfCapabilities [0] IMPLICIT SEQUENCE OF MMSString,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE
}
VMDStop-Request ::= NULL
VMDStop-Response ::= NULL
VMDReset-Request ::= BOOLEAN -- Extended Derivation
VMDReset-Response ::= StatusResponse
InitiateDownloadSequence-Request ::= SEQUENCE {
domainName [0] IMPLICIT Identifier,
listOfCapabilities [1] IMPLICIT SEQUENCE OF MMSString,
sharable [2] IMPLICIT BOOLEAN }
InitiateDownloadSequence-Response ::= NULL
DownloadSegment-Request ::= Identifier -- Domain Name
DownloadSegment-Response ::= SEQUENCE {
loadData LoadData,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE }
LoadData ::= CHOICE {
non-coded [0] IMPLICIT OCTET STRING,
coded EXTERNAL,
embedded EMBEDDED PDV }
TerminateDownloadSequence-Request ::= SEQUENCE {
domainName [0] IMPLICIT Identifier,
discard [1] IMPLICIT ServiceError OPTIONAL }
TerminateDownloadSequence-Response ::= NULL
InitiateUploadSequence-Request ::= Identifier -- Domain Name
InitiateUploadSequence-Response ::= SEQUENCE {
ulsmID [0] IMPLICIT Integer32,
listOfCapabilities [1] IMPLICIT SEQUENCE OF MMSString }
UploadSegment-Request ::= Integer32 -- ULSM ID
UploadSegment-Response ::= SEQUENCE {
loadData LoadData,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE }
TerminateUploadSequence-Request ::= Integer32 -- ULSM ID
TerminateUploadSequence-Response ::= NULL
RequestDomainDownload-Request ::= SEQUENCE {
domainName [0] IMPLICIT Identifier,
listOfCapabilities [1] IMPLICIT SEQUENCE OF MMSString OPTIONAL,
sharable [2] IMPLICIT BOOLEAN,
fileName [4] IMPLICIT FileName }
RequestDomainDownload-Response ::= NULL
RequestDomainUpload-Request ::= SEQUENCE {
domainName [0] IMPLICIT Identifier,
fileName [1] IMPLICIT FileName }
RequestDomainUpload-Response ::= NULL
LoadDomainContent-Request ::= SEQUENCE {
domainName [0] IMPLICIT Identifier,
listOfCapabilities [1] IMPLICIT SEQUENCE OF MMSString OPTIONAL,
sharable [2] IMPLICIT BOOLEAN,
fileName [4] IMPLICIT FileName
IF ( tpy )
, thirdParty [5] IMPLICIT ApplicationReference OPTIONAL
ENDIF
}
LoadDomainContent-Response ::= NULL
StoreDomainContent-Request ::= SEQUENCE {
domainName [0] IMPLICIT Identifier,
fileName [1] IMPLICIT FileName
IF ( tpy )
, thirdParty [2] IMPLICIT ApplicationReference OPTIONAL
ENDIF
}
StoreDomainContent-Response ::= NULL
DeleteDomain-Request ::= Identifier -- Domain Name
DeleteDomain-Response ::= NULL
GetDomainAttributes-Request ::= Identifier -- Domain Name
GetDomainAttributes-Response ::= SEQUENCE {
listOfCapabilities [0] IMPLICIT SEQUENCE OF MMSString,
state [1] IMPLICIT DomainState,
mmsDeletable [2] IMPLICIT BOOLEAN,
sharable [3] IMPLICIT BOOLEAN,
listOfProgramInvocations [4] IMPLICIT SEQUENCE OF Identifier,
-- Program Invocation Names
uploadInProgress [5] IMPLICIT Integer8
IF ( aco )
, accessControlList [6] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
}
CreateProgramInvocation-Request ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier,
listOfDomainNames [1] IMPLICIT SEQUENCE OF Identifier,
reusable [2] IMPLICIT BOOLEAN DEFAULT TRUE
IF ( eventNotification )
IF ( getProgramInvocationAttributes )
, monitorType [3] IMPLICIT BOOLEAN OPTIONAL
-- TRUE indicates PERMANENT monitoring,
-- FALSE indicates CURRENT monitoring
ENDIF
ENDIF
}
CreateProgramInvocation-Response ::= NULL
CS-CreateProgramInvocation-Request ::= INTEGER {
normal (0),
controlling (1),
controlled (2)
} (0..2)
DeleteProgramInvocation-Request ::= Identifier -- Program Invocation Name
DeleteProgramInvocation-Response ::= NULL
Start-Request ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier,
executionArgument CHOICE {
simpleString [1] IMPLICIT MMSString,
encodedString EXTERNAL,
embeddedString EMBEDDED PDV } OPTIONAL }
Start-Response ::= NULL
Start-Error ::= ProgramInvocationState
CS-Start-Request ::= [0] CHOICE {
normal NULL,
controlling SEQUENCE {
startLocation [0] IMPLICIT VisibleString OPTIONAL,
startCount [1] StartCount DEFAULT cycleCount: 1
} }
StartCount ::= CHOICE {
noLimit [0] IMPLICIT NULL,
cycleCount [1] IMPLICIT INTEGER,
stepCount [2] IMPLICIT INTEGER }
Stop-Request ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier }
Stop-Response ::= NULL
Stop-Error ::= ProgramInvocationState
Resume-Request ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier,
executionArgument CHOICE {
simpleString [1] IMPLICIT MMSString,
encodedString EXTERNAL,
enmbeddedString EMBEDDED PDV } OPTIONAL
}
Resume-Response ::= NULL
Resume-Error ::= ProgramInvocationState
CS-Resume-Request ::= [0] CHOICE {
normal NULL,
controlling SEQUENCE {
modeType CHOICE {
continueMode [0] IMPLICIT NULL,
changeMode [1] StartCount
} } }
Reset-Request ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier }
Reset-Response ::= NULL
Reset-Error ::= ProgramInvocationState
Kill-Request ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier }
Kill-Response ::= NULL
GetProgramInvocationAttributes-Request ::= Identifier -- Program Invocation Name
GetProgramInvocationAttributes-Response ::= SEQUENCE {
state [0] IMPLICIT ProgramInvocationState,
listOfDomainNames [1] IMPLICIT SEQUENCE OF Identifier,
mmsDeletable [2] IMPLICIT BOOLEAN,
reusable [3] IMPLICIT BOOLEAN,
monitor [4] IMPLICIT BOOLEAN,
executionArgument CHOICE {
simpleString [5] IMPLICIT MMSString,
encodedString EXTERNAL,
enmbeddedString EMBEDDED PDV }
IF ( aco )
, accessControlList [6] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
}
CS-GetProgramInvocationAttributes-Response ::= SEQUENCE {
errorCode [0] IMPLICIT INTEGER,
control [1] CHOICE {
controlling [0] IMPLICIT SEQUENCE {
controlledPI [0] IMPLICIT SEQUENCE OF Identifier,
programLocation [1] IMPLICIT VisibleString OPTIONAL,
runningMode [2] CHOICE {
freeRunning [0] IMPLICIT NULL,
cycleLimited [1] IMPLICIT INTEGER,
stepLimited [2] IMPLICIT INTEGER }
},
controlled [1] CHOICE {
controllingPI [0] IMPLICIT Identifier,
none [1] IMPLICIT NULL
},
normal [2] IMPLICIT NULL } }
Select-Request ::= SEQUENCE {
controlling [0] IMPLICIT Identifier OPTIONAL,
controlled [1] IMPLICIT SEQUENCE OF Identifier OPTIONAL
-- this field shall appear if and only if the controlling field is included
}
Select-Response ::= NULL
AlterProgramInvocationAttributes-Request ::= SEQUENCE {
programInvocation [0] IMPLICIT Identifier,
startCount [1] StartCount DEFAULT cycleCount: 1 }
AlterProgramInvocationAttributes-Response ::= NULL
ReconfigureProgramInvocation-Request ::= SEQUENCE {
oldProgramInvocationName [0] IMPLICIT Identifier,
newProgramInvocationName [1] IMPLICIT Identifier OPTIONAL,
domainsToAdd [2] IMPLICIT SEQUENCE OF Identifier,
domainsToRemove [3] IMPLICIT SEQUENCE OF Identifier }
ReconfigureProgramInvocation-Response ::= NULL
ControlElement ::= CHOICE {
beginDomainDef [0] SEQUENCE {
domainName [1] IMPLICIT Identifier,
capabilities [2] IMPLICIT SEQUENCE OF MMSString,
sharable [3] IMPLICIT BOOLEAN,
loadData [4] LoadData OPTIONAL
},
continueDomainDef [1] SEQUENCE {
domainName [1] IMPLICIT Identifier,
loadData [3] LoadData
},
endDomainDef [2] IMPLICIT Identifier,
piDefinition [3] IMPLICIT SEQUENCE {
piName [0] IMPLICIT Identifier,
listOfDomains [1] IMPLICIT SEQUENCE OF Identifier,
reusable [2] IMPLICIT BOOLEAN DEFAULT TRUE,
monitorType [3] IMPLICIT BOOLEAN OPTIONAL,
pIState [4] IMPLICIT ProgramInvocationState OPTIONAL
} }
InitiateUnitControlLoad-Request ::= Identifier -- Unit Control Name
InitiateUnitControlLoad-Response ::= NULL
InitiateUnitControl-Error ::= CHOICE {
domain [0] IMPLICIT Identifier,
programInvocation [1] IMPLICIT Identifier
}
UnitControlLoadSegment-Request ::= Identifier -- Unit Control Name
UnitControlLoadSegment-Response ::= SEQUENCE {
controlElements [0] IMPLICIT SEQUENCE OF ControlElement,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE }
UnitControlUpload-Request ::= SEQUENCE {
unitControlName [0] IMPLICIT Identifier, -- Unit Control Name
continueAfter CHOICE {
domain [1] IMPLICIT Identifier,
ulsmID [2] IMPLICIT INTEGER,
programInvocation [3] IMPLICIT Identifier } OPTIONAL
}
UnitControlUpload-Response ::= SEQUENCE {
controlElements [0] IMPLICIT SEQUENCE OF ControlElement,
nextElement CHOICE {
domain [1] IMPLICIT Identifier,
ulsmID [2] IMPLICIT INTEGER,
programInvocation [3] IMPLICIT Identifier } OPTIONAL
}
StartUnitControl-Request ::= SEQUENCE {
unitControlName [0] IMPLICIT Identifier, -- Unit Control Name
executionArgument CHOICE {
simpleString [1] IMPLICIT MMSString,
encodedString EXTERNAL,
enmbeddedString EMBEDDED PDV } OPTIONAL
}
StartUnitControl-Response ::= NULL
StartUnitControl-Error ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier,
programInvocationState [1] IMPLICIT ProgramInvocationState }
StopUnitControl-Request ::= Identifier -- Unit Control Name
StopUnitControl-Response ::= NULL
StopUnitControl-Error ::= SEQUENCE {
programInvocationName [0] IMPLICIT Identifier,
programInvocationState [1] IMPLICIT ProgramInvocationState }
CreateUnitControl-Request ::= SEQUENCE {
unitControl [0] IMPLICIT Identifier, -- Unit Control Name
domains [1] IMPLICIT SEQUENCE OF Identifier,
programInvocations [2] IMPLICIT SEQUENCE OF Identifier }
CreateUnitControl-Response ::= NULL
AddToUnitControl-Request ::= SEQUENCE {
unitControl [0] IMPLICIT Identifier, -- Unit Control Name
domains [1] IMPLICIT SEQUENCE OF Identifier,
programInvocations [2] IMPLICIT SEQUENCE OF Identifier }
AddToUnitControl-Response ::= NULL
RemoveFromUnitControl-Request ::= SEQUENCE {
unitControl [0] IMPLICIT Identifier, -- Unit Control Name
domains [1] IMPLICIT SEQUENCE OF Identifier,
programInvocations [2] IMPLICIT SEQUENCE OF Identifier }
RemoveFromUnitControl-Response ::= NULL
GetUnitControlAttributes-Request ::= Identifier -- Unit Control Name
GetUnitControlAttributes-Response ::= SEQUENCE {
domains [0] IMPLICIT SEQUENCE OF Identifier,
programInvocations [1] IMPLICIT SEQUENCE OF Identifier }
LoadUnitControlFromFile-Request ::= SEQUENCE {
unitControlName [0] IMPLICIT Identifier,
fileName [1] IMPLICIT FileName
IF ( tpy )
, thirdParty [2] IMPLICIT ApplicationReference OPTIONAL
ENDIF
}
LoadUnitControlFromFile-Response ::= NULL
LoadUnitControlFromFile-Error ::= CHOICE {
none [0] IMPLICIT NULL,
domain [1] IMPLICIT Identifier,
programInvocation [2] IMPLICIT Identifier
}
StoreUnitControlToFile-Request ::= SEQUENCE {
unitControlName [0] IMPLICIT Identifier,
fileName [1] IMPLICIT FileName
IF ( tpy )
, thirdParty [2] IMPLICIT ApplicationReference OPTIONAL
ENDIF
}
StoreUnitControlToFile-Response ::= NULL
DeleteUnitControl-Request ::= Identifier -- Unit Control Name
DeleteUnitControl-Response ::= NULL
DeleteUnitControl-Error ::= CHOICE {
domain [0] IMPLICIT Identifier,
programInvocation [1] IMPLICIT Identifier }
TypeSpecification ::= CHOICE {
typeName [0] ObjectName,
typeDescription TypeDescription }
AlternateAccess ::= SEQUENCE OF CHOICE {
unnamed AlternateAccessSelection
IF ( str2 )
, named [5] IMPLICIT SEQUENCE {
componentName [0] IMPLICIT Identifier,
access AlternateAccessSelection }
ENDIF
}
AlternateAccessSelection ::= CHOICE {
selectAlternateAccess [0] IMPLICIT SEQUENCE {
accessSelection CHOICE {
IF ( str2 )
component [0] IMPLICIT Identifier,
ELSE
component [0] IMPLICIT NULL,
ENDIF
IF ( str1 )
index [1] IMPLICIT Unsigned32,
indexRange [2] IMPLICIT SEQUENCE {
lowIndex [0] IMPLICIT Unsigned32,
numberOfElements [1] IMPLICIT Unsigned32
},
ELSE
index [1] IMPLICIT NULL,
indexRange [2] IMPLICIT NULL,
ENDIF
allElements [3] IMPLICIT NULL
},
alternateAccess AlternateAccess
},
selectAccess CHOICE {
IF ( str2 )
component [1] IMPLICIT Identifier,
ELSE
component [1] IMPLICIT NULL,
ENDIF
IF ( str1 )
index [2] IMPLICIT Unsigned32,
indexRange [3] IMPLICIT SEQUENCE {
lowIndex [0] IMPLICIT Unsigned32,
numberOfElements [1] IMPLICIT Unsigned32
},
ELSE
index [2] IMPLICIT NULL,
indexRange [3] IMPLICIT NULL,
ENDIF
allElements [4] IMPLICIT NULL
} }
AccessResult ::= CHOICE {
failure [0] IMPLICIT DataAccessError,
success Data }
Data ::= CHOICE {
-- context tag 0 is reserved for AccessResult
IF ( str1 )
array [1] IMPLICIT SEQUENCE OF Data,
ELSE
array [1] IMPLICIT NULL,
ENDIF
IF ( str2 )
structure [2] IMPLICIT SEQUENCE OF Data,
ELSE
structure [2] IMPLICIT NULL,
ENDIF
boolean [3] IMPLICIT BOOLEAN,
bit-string [4] IMPLICIT BIT STRING,
integer [5] IMPLICIT INTEGER,
unsigned [6] IMPLICIT INTEGER, -- shall not be negative
floating-point [7] IMPLICIT FloatingPoint,
-- [8] is reserved
octet-string [9] IMPLICIT OCTET STRING,
visible-string [10] IMPLICIT VisibleString,
generalized-time [11] IMPLICIT GeneralizedTime,
binary-time [12] IMPLICIT TimeOfDay,
bcd [13] IMPLICIT INTEGER, -- shall not be negative
booleanArray [14] IMPLICIT BIT STRING,
objId [15] IMPLICIT OBJECT IDENTIFIER,
...,
mMSString [16] IMPLICIT MMSString
}
FloatingPoint ::= OCTET STRING
DataAccessError ::= INTEGER {
object-invalidated (0),
hardware-fault (1),
temporarily-unavailable (2),
object-access-denied (3),
object-undefined (4),
invalid-address (5),
type-unsupported (6),
type-inconsistent (7),
object-attribute-inconsistent (8),
object-access-unsupported (9),
object-non-existent (10),
object-value-invalid (11)
} (0..11)
VariableAccessSpecification ::= CHOICE {
listOfVariable [0] IMPLICIT SEQUENCE OF SEQUENCE {
variableSpecification VariableSpecification,
IF ( valt )
alternateAccess [5] IMPLICIT AlternateAccess OPTIONAL
ENDIF
}
IF ( vlis )
, variableListName [1] ObjectName
ENDIF
}
VariableSpecification ::= CHOICE {
IF ( vnam )
name [0] ObjectName,
ENDIF
IF ( vadr )
address [1] Address,
variableDescription [2] IMPLICIT SEQUENCE {
address Address,
typeSpecification TypeSpecification
},
ENDIF
-- the following element is only present to support the services
-- defined in annex E
IF ( vsca )
scatteredAccessDescription [3] IMPLICIT ScatteredAccessDescription,
ELSE
scatteredAccessDescription [3] IMPLICIT NULL,
ENDIF
invalidated [4] IMPLICIT NULL
}
Read-Request ::= SEQUENCE {
specificationWithResult [0] IMPLICIT BOOLEAN DEFAULT FALSE,
variableAccessSpecification [1] VariableAccessSpecification }
Read-Response ::= SEQUENCE {
variableAccessSpecification [0] VariableAccessSpecification OPTIONAL,
listOfAccessResult [1] IMPLICIT SEQUENCE OF AccessResult }
Write-Request ::= SEQUENCE {
variableAccessSpecification VariableAccessSpecification,
listOfData [0] IMPLICIT SEQUENCE OF Data }
Write-Response ::= SEQUENCE OF CHOICE {
failure [0] IMPLICIT DataAccessError,
success [1] IMPLICIT NULL }
InformationReport ::= SEQUENCE {
variableAccessSpecification VariableAccessSpecification,
listOfAccessResult [0] IMPLICIT SEQUENCE OF AccessResult }
GetVariableAccessAttributes-Request ::= CHOICE {
IF ( vnam )
name [0] ObjectName
IF ( vadr )
,
ENDIF
IF ( vadr)
address [1] Address
ENDIF
}
GetVariableAccessAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
IF ( vadr )
address [1] Address OPTIONAL,
ENDIF
typeDescription [2] TypeDescription
IF ( aco )
, accessControlList [3] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
IF ( sem )
, meaning [4] IMPLICIT VisibleString OPTIONAL
ENDIF
}
DefineNamedVariable-Request ::= SEQUENCE {
variableName [0] ObjectName,
address [1] Address,
typeSpecification [2] TypeSpecification OPTIONAL }
DefineNamedVariable-Response ::= NULL
DeleteVariableAccess-Request ::= SEQUENCE {
scopeOfDelete [0] IMPLICIT INTEGER {
specific (0),
aa-specific (1),
domain (2),
vmd (3)
} (0..3) DEFAULT specific,
listOfName [1] IMPLICIT SEQUENCE OF ObjectName OPTIONAL,
domainName [2] IMPLICIT Identifier OPTIONAL }
DeleteVariableAccess-Response ::= SEQUENCE {
numberMatched [0] IMPLICIT Unsigned32,
numberDeleted [1] IMPLICIT Unsigned32 }
DeleteVariableAccess-Error ::= Unsigned32 -- numberDeleted
DefineNamedVariableList-Request ::= SEQUENCE {
variableListName ObjectName,
listOfVariable [0] IMPLICIT SEQUENCE OF SEQUENCE {
variableSpecification VariableSpecification
IF (valt)
, alternateAccess [5] IMPLICIT AlternateAccess OPTIONAL
ENDIF
} }
DefineNamedVariableList-Response ::= NULL
GetNamedVariableListAttributes-Request ::= ObjectName -- VariableListName
GetNamedVariableListAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
listOfVariable [1] IMPLICIT SEQUENCE OF SEQUENCE {
variableSpecification VariableSpecification
IF ( valt )
, alternateAccess [5] IMPLICIT AlternateAccess OPTIONAL }
ENDIF
IF ( aco )
, accessControlList [2] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
}
DeleteNamedVariableList-Request ::= SEQUENCE {
scopeOfDelete [0] IMPLICIT INTEGER {
specific (0),
aa-specific (1),
domain (2),
vmd (3)
} (0..3) DEFAULT specific,
listOfVariableListName [1] IMPLICIT SEQUENCE OF ObjectName OPTIONAL,
domainName [2] IMPLICIT Identifier OPTIONAL }
DeleteNamedVariableList-Response ::= SEQUENCE {
numberMatched [0] IMPLICIT Unsigned32,
numberDeleted [1] IMPLICIT Unsigned32 }
DeleteNamedVariableList-Error ::= Unsigned32 -- numberDeleted
DefineNamedType-Request ::= SEQUENCE {
typeName ObjectName,
typeSpecification TypeSpecification }
DefineNamedType-Response ::= NULL
GetNamedTypeAttributes-Request ::= ObjectName --TypeName
GetNamedTypeAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
typeSpecification TypeSpecification
IF ( aco )
, accessControlList [1] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
IF ( sem )
, meaning [4] IMPLICIT VisibleString OPTIONAL
ENDIF
}
DeleteNamedType-Request ::= SEQUENCE {
scopeOfDelete [0] IMPLICIT INTEGER {
specific (0),
aa-specific (1),
domain (2),
vmd (3)
} (0..3) DEFAULT specific,
listOfTypeName [1] IMPLICIT SEQUENCE OF ObjectName OPTIONAL,
domainName [2] IMPLICIT Identifier OPTIONAL }
DeleteNamedType-Response ::= SEQUENCE {
numberMatched [0] IMPLICIT Unsigned32,
numberDeleted [1] IMPLICIT Unsigned32
}
DeleteNamedType-Error ::= Unsigned32 -- numberDeleted
ExchangeData-Request ::= SEQUENCE {
dataExchangeName [0] ObjectName,
listOfRequestData [1] IMPLICIT SEQUENCE OF Data }
ExchangeData-Response ::= SEQUENCE {
listOfResponseData [0] IMPLICIT SEQUENCE OF Data }
GetDataExchangeAttributes-Request ::= ObjectName
GetDataExchangeAttributes-Response ::= SEQUENCE {
inUse [0] IMPLICIT BOOLEAN,
listOfRequestTypeDescriptions [1] IMPLICIT SEQUENCE OF TypeDescription,
listOfResponseTypeDescriptions [2] IMPLICIT SEQUENCE OF TypeDescription,
programInvocation [3] IMPLICIT Identifier OPTIONAL
IF (aco)
, accessControlList [4] IMPLICIT Identifier OPTIONAL
ENDIF
-- Shall not appear in minor version one or two
}
TakeControl-Request ::= SEQUENCE {
semaphoreName [0] ObjectName,
namedToken [1] IMPLICIT Identifier OPTIONAL,
priority [2] IMPLICIT Priority DEFAULT normalPriority,
acceptableDelay [3] IMPLICIT Unsigned32 OPTIONAL,
controlTimeOut [4] IMPLICIT Unsigned32 OPTIONAL,
abortOnTimeOut [5] IMPLICIT BOOLEAN OPTIONAL,
relinquishIfConnectionLost [6] IMPLICIT BOOLEAN DEFAULT TRUE
IF ( tpy )
, applicationToPreempt [7] IMPLICIT ApplicationReference OPTIONAL
ENDIF
}
TakeControl-Response ::= CHOICE {
noResult [0] IMPLICIT NULL,
namedToken [1] IMPLICIT Identifier }
RelinquishControl-Request ::= SEQUENCE {
semaphoreName [0] ObjectName,
namedToken [1] IMPLICIT Identifier OPTIONAL }
RelinquishControl-Response ::= NULL
DefineSemaphore-Request ::= SEQUENCE {
semaphoreName [0] ObjectName,
numberOfTokens [1] IMPLICIT Unsigned16 }
DefineSemaphore-Response ::= NULL
DeleteSemaphore-Request ::= ObjectName -- Semaphore Name
DeleteSemaphore-Response ::= NULL
ReportSemaphoreStatus-Request ::= ObjectName -- Semaphore Name
ReportSemaphoreStatus-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
class [1] IMPLICIT INTEGER {
token (0),
pool (1) } (0..1),
numberOfTokens [2] IMPLICIT Unsigned16,
numberOfOwnedTokens [3] IMPLICIT Unsigned16,
numberOfHungTokens [4] IMPLICIT Unsigned16
IF (aco)
, accessControlList [5] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
}
ReportPoolSemaphoreStatus-Request ::= SEQUENCE {
semaphoreName [0] ObjectName,
nameToStartAfter [1] IMPLICIT Identifier OPTIONAL }
ReportPoolSemaphoreStatus-Response ::= SEQUENCE {
listOfNamedTokens [0] IMPLICIT SEQUENCE OF CHOICE {
freeNamedToken [0] IMPLICIT Identifier,
ownedNamedToken [1] IMPLICIT Identifier,
hungNamedToken [2] IMPLICIT Identifier },
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE
}
ReportSemaphoreEntryStatus-Request ::= SEQUENCE {
semaphoreName [0] ObjectName,
state [1] IMPLICIT INTEGER {
queued (0),
owner (1),
hung (2) } (0..2),
entryIDToStartAfter [2] IMPLICIT OCTET STRING OPTIONAL }
ReportSemaphoreEntryStatus-Response ::= SEQUENCE {
listOfSemaphoreEntry [0] IMPLICIT SEQUENCE OF SemaphoreEntry,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE }
SemaphoreEntry ::= SEQUENCE {
entryID [0] IMPLICIT OCTET STRING,
entryClass [1] IMPLICIT INTEGER {
simple (0),
modifier (1) } (0..1),
applicationReference [2] ApplicationReference,
namedToken [3] IMPLICIT Identifier OPTIONAL,
priority [4] IMPLICIT Priority DEFAULT normalPriority,
remainingTimeOut [5] IMPLICIT Unsigned32 OPTIONAL,
abortOnTimeOut [6] IMPLICIT BOOLEAN OPTIONAL,
relinquishIfConnectionLost [7] IMPLICIT BOOLEAN DEFAULT TRUE }
AttachToSemaphore ::= SEQUENCE {
semaphoreName [0] ObjectName,
namedToken [1] IMPLICIT Identifier OPTIONAL,
priority [2] IMPLICIT Priority DEFAULT normalPriority,
acceptableDelay [3] IMPLICIT Unsigned32 OPTIONAL,
controlTimeOut [4] IMPLICIT Unsigned32 OPTIONAL,
abortOnTimeOut [5] IMPLICIT BOOLEAN OPTIONAL,
relinquishIfConnectionLost [6] IMPLICIT BOOLEAN DEFAULT TRUE }
Input-Request ::= SEQUENCE {
operatorStationName [0] IMPLICIT Identifier,
echo [1] IMPLICIT BOOLEAN DEFAULT TRUE,
IF (output)
listOfPromptData [2] IMPLICIT SEQUENCE OF MMSString OPTIONAL,
ENDIF
inputTimeOut [3] IMPLICIT Unsigned32 OPTIONAL }
Input-Response ::= MMSString -- Input String
Output-Request ::= SEQUENCE {
operatorStationName [0] IMPLICIT Identifier,
listOfOutputData [1] IMPLICIT SEQUENCE OF MMSString }
Output-Response ::= NULL
TriggerEvent-Request ::= SEQUENCE {
eventConditionName [0] ObjectName,
priority [1] IMPLICIT Priority OPTIONAL }
TriggerEvent-Response ::= NULL
EventNotification ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
eventConditionName [1] ObjectName,
severity [2] IMPLICIT Severity,
currentState [3] IMPLICIT EC-State OPTIONAL,
transitionTime [4] EventTime,
notificationLost [6] IMPLICIT BOOLEAN DEFAULT FALSE,
alarmAcknowledgmentRule [7] IMPLICIT AlarmAckRule OPTIONAL,
actionResult [8] IMPLICIT SEQUENCE {
eventActionName ObjectName,
successOrFailure CHOICE {
success [0] IMPLICIT SEQUENCE {
confirmedServiceResponse ConfirmedServiceResponse
IF ( csr cspi )
, cs-Response-Detail [79] Response-Detail OPTIONAL
-- shall not be transmitted if value is the
-- value of a tagged type derived from NULL
ENDIF
},
failure [1] IMPLICIT SEQUENCE {
modifierPosition [0] IMPLICIT Unsigned32 OPTIONAL,
serviceError [1] IMPLICIT ServiceError }
}
} OPTIONAL
}
CS-EventNotification ::= [0] CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement NULL }
AcknowledgeEventNotification-Request ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
acknowledgedState [2] IMPLICIT EC-State,
timeOfAcknowledgedTransition [3] EventTime }
AcknowledgeEventNotification-Response ::= NULL
GetAlarmSummary-Request ::= SEQUENCE {
enrollmentsOnly [0] IMPLICIT BOOLEAN DEFAULT TRUE,
activeAlarmsOnly [1] IMPLICIT BOOLEAN DEFAULT TRUE,
acknowledgementFilter [2] IMPLICIT INTEGER {
not-acked (0),
acked (1),
all (2)
} (0..2) DEFAULT not-acked,
severityFilter [3] IMPLICIT SEQUENCE {
mostSevere [0] IMPLICIT Unsigned8,
leastSevere [1] IMPLICIT Unsigned8 }
DEFAULT { mostSevere 0, leastSevere 127 },
continueAfter [5] ObjectName OPTIONAL
}
GetAlarmSummary-Response ::= SEQUENCE {
listOfAlarmSummary [0] IMPLICIT SEQUENCE OF AlarmSummary,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT FALSE }
AlarmSummary ::= SEQUENCE {
eventConditionName [0] ObjectName,
severity [1] IMPLICIT Unsigned8,
currentState [2] IMPLICIT EC-State,
unacknowledgedState [3] IMPLICIT INTEGER {
none (0),
active (1),
idle (2),
both (3)
} (0..3),
IF ( csr cspi )
displayEnhancement [4] EN-Additional-Detail OPTIONAL,
-- shall not be transmitted if the value is NULL
ELSE
displayEnhancement [4] NULL,
ENDIF
timeOfLastTransitionToActive [5] EventTime OPTIONAL,
timeOfLastTransitionToIdle [6] EventTime OPTIONAL }
EN-Additional-Detail ::= [0] CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement NULL }
GetAlarmEnrollmentSummary-Request ::= SEQUENCE {
enrollmentsOnly [0] IMPLICIT BOOLEAN DEFAULT TRUE,
activeAlarmsOnly [1] IMPLICIT BOOLEAN DEFAULT TRUE,
acknowledgementFilter [2] IMPLICIT INTEGER {
not-acked (0),
acked (1),
all (2)
} (0..2) DEFAULT not-acked,
severityFilter [3] IMPLICIT SEQUENCE {
mostSevere [0] IMPLICIT Unsigned8,
leastSevere [1] IMPLICIT Unsigned8 }
DEFAULT { mostSevere 0, leastSevere 127 },
continueAfter [5] ObjectName OPTIONAL
}
GetAlarmEnrollmentSummary-Response ::= SEQUENCE {
listOfAlarmEnrollmentSummary [0] IMPLICIT SEQUENCE OF
AlarmEnrollmentSummary,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT FALSE }
AlarmEnrollmentSummary ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
IF ( tpy )
clientApplication [2] ApplicationReference OPTIONAL,
ELSE
clientApplication [2] NULL,
ENDIF
severity [3] IMPLICIT Unsigned8,
currentState [4] IMPLICIT EC-State,
IF ( cspi )
displayEnhancement [5] EN-Additional-Detail OPTIONAL,
-- shall not be transmitted if the value is NULL
ELSE
displayEnhancement [5] NULL,
ENDIF
notificationLost [6] IMPLICIT BOOLEAN DEFAULT FALSE,
alarmAcknowledgmentRule [7] IMPLICIT AlarmAckRule,
enrollmentState [8] IMPLICIT EE-State OPTIONAL,
timeOfLastTransitionToActive [9] EventTime OPTIONAL,
timeActiveAcknowledged [10] EventTime OPTIONAL,
timeOfLastTransitionToIdle [11] EventTime OPTIONAL,
timeIdleAcknowledged [12] EventTime OPTIONAL }
AttachToEventCondition ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
eventConditionName [1] ObjectName,
causingTransitions [2] IMPLICIT Transitions,
acceptableDelay [3] IMPLICIT Unsigned32 OPTIONAL }
DefineEventCondition-Request ::= SEQUENCE {
eventConditionName [0] ObjectName,
class [1] IMPLICIT EC-Class,
priority [2] IMPLICIT Priority DEFAULT normalPriority,
severity [3] IMPLICIT Unsigned8 DEFAULT normalSeverity,
alarmSummaryReports [4] IMPLICIT BOOLEAN OPTIONAL,
monitoredVariable [6] VariableSpecification OPTIONAL,
evaluationInterval [7] IMPLICIT Unsigned32 OPTIONAL }
DefineEventCondition-Response ::= NULL
CS-DefineEventCondition-Request ::= [0] CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement NULL }
DeleteEventCondition-Request ::= CHOICE {
specific [0] IMPLICIT SEQUENCE OF ObjectName,
aa-specific [1] IMPLICIT NULL,
domain [2] IMPLICIT Identifier,
vmd [3] IMPLICIT NULL }
DeleteEventCondition-Response ::= Unsigned32 --Candidates Not Deleted
GetEventConditionAttributes-Request ::= ObjectName --Event Condition Name
GetEventConditionAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN DEFAULT FALSE,
class [1] IMPLICIT EC-Class,
priority [2] IMPLICIT Priority DEFAULT normalPriority,
severity [3] IMPLICIT Unsigned8 DEFAULT normalSeverity,
alarmSummaryReports [4] IMPLICIT BOOLEAN DEFAULT FALSE,
monitoredVariable [6] CHOICE {
variableReference [0] VariableSpecification,
undefined [1] IMPLICIT NULL } OPTIONAL,
evaluationInterval [7] IMPLICIT Unsigned32 OPTIONAL
IF (aco),
accessControlList [8] IMPLICIT Identifier OPTIONAL
ENDIF
-- Shall not appear in minor version one or two
}
CS-GetEventConditionAttributes-Response ::= SEQUENCE {
groupPriorityOverride [0] CHOICE {
priority [0] IMPLICIT Priority,
undefined [1] IMPLICIT NULL } OPTIONAL,
listOfReferencingECL [1] IMPLICIT SEQUENCE OF ObjectName OPTIONAL,
displayEnhancement [2] CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement [2] IMPLICIT NULL }
}
ReportEventConditionStatus-Request ::= ObjectName --Event Condition Name
ReportEventConditionStatus-Response ::= SEQUENCE {
currentState [0] IMPLICIT EC-State,
numberOfEventEnrollments [1] IMPLICIT Unsigned32,
enabled [2] IMPLICIT BOOLEAN OPTIONAL,
timeOfLastTransitionToActive [3] EventTime OPTIONAL,
timeOfLastTransitionToIdle [4] EventTime OPTIONAL }
AlterEventConditionMonitoring-Request ::= SEQUENCE {
eventConditionName [0] ObjectName,
enabled [1] IMPLICIT BOOLEAN OPTIONAL,
priority [2] IMPLICIT Priority OPTIONAL,
alarmSummaryReports [3] IMPLICIT BOOLEAN OPTIONAL
IF ( cei )
, evaluationInterval [4] IMPLICIT Unsigned32 OPTIONAL
ENDIF
-- At least one of enabled, priority, alarmSummaryReports, or
-- evaluationInterval shall be present.
}
AlterEventConditionMonitoring-Response ::= NULL
CS-AlterEventConditionMonitoring-Request ::= SEQUENCE {
changeDisplay CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement [2] NULL } OPTIONAL
}
DefineEventAction-Request ::= SEQUENCE {
eventActionName [0] ObjectName,
listOfModifier [1] IMPLICIT SEQUENCE OF Modifier OPTIONAL,
confirmedServiceRequest [2] ConfirmedServiceRequest
IF ( csr cspi )
, cs-extension [79] Request-Detail OPTIONAL
-- shall not be transmitted if value is the value
-- of a tagged type derived from NULL
ENDIF
}
DefineEventAction-Response ::= NULL
DeleteEventAction-Request ::= CHOICE {
specific [0] IMPLICIT SEQUENCE OF ObjectName,
aa-specific [1] IMPLICIT NULL,
domain [3] IMPLICIT Identifier,
vmd [4] IMPLICIT NULL }
DeleteEventAction-Response ::= Unsigned32 --Candidates Not Deleted
GetEventActionAttributes-Request ::= ObjectName --EventActionName
GetEventActionAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN DEFAULT FALSE,
listOfModifier [1] IMPLICIT SEQUENCE OF Modifier,
confirmedServiceRequest [2] ConfirmedServiceRequest
IF ( csr cspi )
, cs-extension [79] Request-Detail OPTIONAL
-- shall not be transmitted if value is the value
-- of a tagged type derived from NULL
ENDIF
IF (aco)
, accessControlList [3] IMPLICIT Identifier OPTIONAL
ENDIF
-- Shall not appear in minor version one or two
}
ReportEventActionStatus-Request ::= ObjectName -- Event Action Name
ReportEventActionStatus-Response ::= Unsigned32 -- Number of Event Enrollments
DefineEventEnrollment-Request ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
eventConditionName [1] ObjectName,
eventConditionTransitions [2] IMPLICIT Transitions,
alarmAcknowledgmentRule [3] IMPLICIT AlarmAckRule,
eventActionName [4] ObjectName OPTIONAL
IF ( tpy )
, clientApplication [5] ApplicationReference OPTIONAL
ENDIF
}
DefineEventEnrollment-Response ::= NULL
DefineEventEnrollment-Error ::= ObjectName
CS-DefineEventEnrollment-Request ::= [0] CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement NULL }
DeleteEventEnrollment-Request ::= CHOICE {
specific [0] IMPLICIT SEQUENCE OF ObjectName,
ec [1] ObjectName,
ea [2] ObjectName }
DeleteEventEnrollment-Response ::= Unsigned32 --Candidates Not Deleted
GetEventEnrollmentAttributes-Request ::= SEQUENCE {
scopeOfRequest [0] IMPLICIT INTEGER {
specific (0),
client (1),
ec (2),
ea (3) } (0..3) DEFAULT client,
eventEnrollmentNames [1] IMPLICIT SEQUENCE OF ObjectName OPTIONAL,
IF ( tpy )
clientApplication [2] ApplicationReference OPTIONAL,
ELSE
clientApplication [2] NULL,
ENDIF
eventConditionName [3] ObjectName OPTIONAL,
eventActionName [4] ObjectName OPTIONAL,
continueAfter [5] ObjectName OPTIONAL }
GetEventEnrollmentAttributes-Response ::= SEQUENCE {
listOfEEAttributes [0] IMPLICIT SEQUENCE OF EEAttributes,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT FALSE }
EEAttributes ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
eventConditionName [1] CHOICE {
eventCondition [0] ObjectName,
undefined [1] IMPLICIT NULL },
eventActionName [2] CHOICE {
eventAction [0] ObjectName,
undefined [1] IMPLICIT NULL } OPTIONAL,
IF ( tpy )
clientApplication [3] ApplicationReference OPTIONAL,
ELSE
clientApplication [3] NULL,
ENDIF
mmsDeletable [4] IMPLICIT BOOLEAN DEFAULT FALSE,
enrollmentClass [5] IMPLICIT EE-Class,
duration [6] IMPLICIT EE-Duration DEFAULT current,
invokeID [7] IMPLICIT Unsigned32 OPTIONAL,
remainingAcceptableDelay [8] IMPLICIT Unsigned32 OPTIONAL
IF ( csr cspi )
, displayEnhancement [9] CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement NULL }
-- shall not be transmitted if the value is NULL
ELSE
displayEnhancement [9] NULL
IF ( aco )
, accessControlList [11] IMPLICIT Identifier
-- shall not appear in minor version one or two
ENDIF
}
ReportEventEnrollmentStatus-Request ::= ObjectName --Event Enrollment Name
ReportEventEnrollmentStatus-Response ::= SEQUENCE {
eventConditionTransitions [0] IMPLICIT Transitions,
notificationLost [1] IMPLICIT BOOLEAN DEFAULT FALSE,
duration [2] IMPLICIT EE-Duration,
alarmAcknowledgmentRule [3] IMPLICIT AlarmAckRule OPTIONAL,
currentState [4] IMPLICIT EE-State }
AlterEventEnrollment-Request ::= SEQUENCE {
eventEnrollmentName [0] ObjectName,
eventConditionTransitions [1] IMPLICIT Transitions OPTIONAL,
alarmAcknowledgmentRule [2] IMPLICIT AlarmAckRule OPTIONAL }
AlterEventEnrollment-Response ::= SEQUENCE {
currentState [0] CHOICE {
state [0] IMPLICIT EE-State,
undefined [1] IMPLICIT NULL },
transitionTime [1] EventTime }
CS-AlterEventEnrollment-Request ::= SEQUENCE {
changeDisplay CHOICE {
IF ( des )
string [0] IMPLICIT VisibleString,
ENDIF
IF ( dei )
index [1] IMPLICIT INTEGER,
ENDIF
noEnhancement [2] NULL } OPTIONAL }
EE-State ::= INTEGER {
disabled (0),
idle (1),
active (2),
activeNoAckA (3),
idleNoAckI (4),
idleNoAckA (5),
idleAcked (6),
activeAcked (7),
undefined (8)
}
DefineEventConditionList-Request ::= SEQUENCE {
eventConditionListName [0] ObjectName,
listOfEventConditionName [1] IMPLICIT SEQUENCE OF ObjectName
IF ( recl ),
listOfEventConditionListName [2] IMPLICIT SEQUENCE OF ObjectName OPTIONAL
-- shall appear if an only if recl has been negotiated.
ENDIF
}
DefineEventConditionList-Response ::= NULL
DefineEventConditionList-Error ::= ObjectName
DeleteEventConditionList-Request ::= ObjectName -- EventConditionListName
DeleteEventConditionList-Response ::= NULL
AddEventConditionListReference-Request ::= SEQUENCE {
eventConditionListName [0] ObjectName,
listOfEventConditionName [1] IMPLICIT SEQUENCE OF ObjectName
IF ( recl )
, listOfEventConditionListName [2] IMPLICIT SEQUENCE OF ObjectName OPTIONAL
-- shall appear if an only if recl has been negotiated.
ENDIF
}
AddEventConditionListReference-Response ::= NULL
AddEventConditionListReference-Error ::= ObjectName
RemoveEventConditionListReference-Request ::= SEQUENCE {
eventConditionListName [0] ObjectName,
listOfEventConditionName [1] IMPLICIT SEQUENCE OF ObjectName
IF ( recl )
, listOfEventConditionListName [2] IMPLICIT SEQUENCE OF ObjectName
-- shall appear if an only if recl has been negotiated.
ENDIF
}
RemoveEventConditionListReference-Response ::= NULL
RemoveEventConditionListReference-Error ::= CHOICE {
eventCondition [0] ObjectName,
eventConditionList [1] ObjectName }
GetEventConditionListAttributes-Request ::= ObjectName -- eventConditionListName
GetEventConditionListAttributes-Response ::= SEQUENCE {
listOfEventConditionName [1] IMPLICIT SEQUENCE OF ObjectName
IF ( recl )
, listOfEventConditionListName [2] IMPLICIT SEQUENCE OF ObjectName OPTIONAL
-- shall appear if an only if recl has been negotiated.
ENDIF
}
ReportEventConditionListStatus-Request ::= SEQUENCE {
eventConditionListName [0] ObjectName, -- Event Condition List Name
continueAfter [1] IMPLICIT Identifier OPTIONAL }
ReportEventConditionListStatus-Response ::= SEQUENCE {
listOfEventConditionStatus [1] IMPLICIT SEQUENCE OF EventConditionStatus,
moreFollows [2] IMPLICIT BOOLEAN DEFAULT TRUE }
EventConditionStatus ::= SEQUENCE {
eventConditionName [0] ObjectName,
currentState [1] IMPLICIT EC-State,
numberOfEventEnrollments [2] IMPLICIT Unsigned32,
enabled [3] IMPLICIT BOOLEAN OPTIONAL,
timeOfLastTransitionToActive [4] EventTime OPTIONAL,
timeOfLastTransitionToIdle [5] EventTime OPTIONAL }
AlterEventConditionListMonitoring-Request ::= SEQUENCE {
eventConditionListName [0] ObjectName,
enabled [1] IMPLICIT BOOLEAN,
priorityChange [2] CHOICE {
priorityValue [0] IMPLICIT INTEGER,
priorityReset [1] IMPLICIT NULL } OPTIONAL
}
AlterEventConditionListMonitoring-Response ::= NULL
ReadJournal-Request ::= SEQUENCE {
journalName [0] ObjectName,
rangeStartSpecification [1] CHOICE {
startingTime [0] IMPLICIT TimeOfDay,
startingEntry [1] IMPLICIT OCTET STRING } OPTIONAL,
rangeStopSpecification [2] CHOICE {
endingTime [0] IMPLICIT TimeOfDay,
numberOfEntries [1] IMPLICIT Integer32 } OPTIONAL,
listOfVariables [4] IMPLICIT SEQUENCE OF VisibleString OPTIONAL,
entryToStartAfter [5] IMPLICIT SEQUENCE {
timeSpecification [0] IMPLICIT TimeOfDay,
entrySpecification [1] IMPLICIT OCTET STRING } OPTIONAL
}
ReadJournal-Response ::= SEQUENCE {
listOfJournalEntry [0] IMPLICIT SEQUENCE OF JournalEntry,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT FALSE }
JournalEntry ::= SEQUENCE {
entryIdentifier [0] IMPLICIT OCTET STRING,
originatingApplication [1] ApplicationReference,
entryContent [2] IMPLICIT EntryContent }
WriteJournal-Request ::= SEQUENCE {
journalName [0] ObjectName,
listOfJournalEntry [1] IMPLICIT SEQUENCE OF EntryContent }
WriteJournal-Response ::= NULL
InitializeJournal-Request ::= SEQUENCE {
journalName [0] ObjectName,
limitSpecification [1] IMPLICIT SEQUENCE {
limitingTime [0] IMPLICIT TimeOfDay,
limitingEntry [1] IMPLICIT OCTET STRING OPTIONAL } OPTIONAL
}
InitializeJournal-Response ::= Unsigned32 -- Entries Deleted
ReportJournalStatus-Request ::= ObjectName --Journal Name
ReportJournalStatus-Response ::= SEQUENCE {
currentEntries [0] IMPLICIT Unsigned32,
mmsDeletable [1] IMPLICIT BOOLEAN
IF ( aco )
, accessControlList [2] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
}
CreateJournal-Request ::= SEQUENCE {
journalName [0] ObjectName }
CreateJournal-Response ::= NULL
DeleteJournal-Request ::= SEQUENCE {
journalName [0] ObjectName }
DeleteJournal-Response ::= NULL
EntryContent ::= SEQUENCE {
occurrenceTime [0] IMPLICIT TimeOfDay,
entryForm CHOICE {
data [2] IMPLICIT SEQUENCE {
event [0] IMPLICIT SEQUENCE {
eventConditionName [0] ObjectName,
currentState [1] IMPLICIT EC-State } OPTIONAL,
listOfVariables [1] IMPLICIT SEQUENCE OF Journal-Variable OPTIONAL
},
annotation [3] MMSString }
}
END
MMS-Environment-1 { iso standard 9506 part(2) mms-environment-version1(4)}
DEFINITIONS ::= BEGIN
EXPORTS
ApplicationReference,
Authentication-value;
IMPORTS
AP-title,
AP-invocation-identifier,
AE-qualifier,
AE-invocation-identifier,
Authentication-value
FROM ACSE-1
{ joint-iso-itu-t association-control(2) modules(0) apdus(0) version1(1)};
ApplicationReference ::= SEQUENCE {
ap-title [0] ACSE-1.AP-title OPTIONAL,
ap-invocation-id [1] ACSE-1.AP-invocation-identifier OPTIONAL,
ae-qualifier [2] ACSE-1.AE-qualifier OPTIONAL,
ae-invocation-id [3] ACSE-1.AE-invocation-identifier OPTIONAL
}
END
MMS-SCI-Module-1 { iso standard 9506 part(2) mms-file-record-version1(2) }
DEFINITIONS ::= BEGIN
IMPORTS ApplicationReference
FROM MMS-Environment-1 { iso standard 9506 part(2) mms-environment-version1(4) }
AccessCondition,
AdditionalCBBOptions,
AdditionalSupportOptions,
Address,
AlarmAckRule,
Control-State,
DomainState,
EC-Class,
EC-State,
EE-Duration,
EE-Class,
LogicalStatus,
Modifier,
ParameterSupportOptions,
PhysicalStatus,
Priority,
ProgramInvocationState,
ServiceSupportOptions,
Severity,
Transitions,
TypeDescription
FROM MMS-Object-Module-1 { iso standard 9506 part(1) mms-object-model1(1) }
AlternateAccess,
ConfirmedServiceRequest,
AttachToEventCondition,
AttachToSemaphore,
Data,
EE-State,
Identifier,
Integer8,
Integer32,
MMSString,
MMS255String,
ObjectName,
TimeOfDay,
TypeSpecification,
Unsigned32,
Unsigned8
FROM ISO-9506-MMS-1 { iso standard 9506 part(2) mms-abstract-syntax-version1(1)
};
SCI-Information ::= SEQUENCE {
partOne [0] IMPLICIT VMD-File,
partTwo [1] IMPLICIT Service-and-Parameter-CBBs
}
VMD-File ::= SEQUENCE {
executiveFunction
[0] IMPLICIT ApplicationReference,
vendorName
[1] MMSString,
modelName
[2] MMSString,
revision
[3] MMSString,
abstractSyntaxes
[4] IMPLICIT OBJECT IDENTIFIER,
-- no TRANSACTIONs,
-- no APPLICATION-ASSOCIATIONs,
accessControl
[5] IMPLICIT Access-Control-List-instance,
logicalStatus
[6] IMPLICIT LogicalStatus,
capabilities
[7] IMPLICIT SEQUENCE OF MMSString,
physicalStatus
[8] IMPLICIT PhysicalStatus,
local-detail
[9] IMPLICIT BIT STRING,
accessControlLists
[10] IMPLICIT SEQUENCE OF Access-Control-List-instance,
domains
[11] IMPLICIT SEQUENCE OF Domain-instance,
programInvocations
[12] IMPLICIT SEQUENCE OF Program-Invocation-instance,
unitControls
[13] IMPLICIT SEQUENCE OF Unit-Control-instance
IF (vadr)
, unnamedVariables
[14] IMPLICIT SEQUENCE OF Unnamed-Variable-instance
ELSE
, unnamedVariables
[14] IMPLICIT NULL
ENDIF
IF (vnam)
, namedVariables
[15] IMPLICIT SEQUENCE OF Named-Variable-instance
IF (vlis)
, namedVariableLists
[16] IMPLICIT SEQUENCE OF Named-Variable-List-instance
ELSE
, namedVariableLists
[16] IMPLICIT NULL
ENDIF
, namedTypes
[17] IMPLICIT SEQUENCE OF Named-Type-instance
ELSE
, namedVariables
[15] IMPLICIT NULL,
namedVariableLists
[16] IMPLICIT NULL,
namedTypes
[17] IMPLICIT NULL
ENDIF
, dataExchanges
[18] IMPLICIT SEQUENCE OF Data-Exchange-instance,
semaphores
[19] IMPLICIT SEQUENCE OF Semaphore-instance,
operatorStations
[20] IMPLICIT SEQUENCE OF Operator-Station-instance,
eventConditions
[21] IMPLICIT SEQUENCE OF Event-Condition-instance,
eventActions
[22] IMPLICIT SEQUENCE OF Event-Action-instance,
eventEnrollments
[23] IMPLICIT SEQUENCE OF Event-Enrollment-instance
IF (cspi)
, eventConditionLists
[24] IMPLICIT SEQUENCE OF Event-Condition-List-instance
ELSE
, eventConditionLists
[24] IMPLICIT NULL
ENDIF
, journals
[25] IMPLICIT SEQUENCE OF Journal-instance,
...
IF (csr)
, selected-Program-Invocation CHOICE {
selectedProgram
[26] IMPLICIT Program-Invocation-instance,
noneSelected
[27] IMPLICIT NULL }
ENDIF
}
Access-Control-List-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl
[3] IMPLICIT Access-Control-List-instance,
readAccessCondition
[4] AccessCondition OPTIONAL,
storeAccessCondition
[5] AccessCondition OPTIONAL,
writeAccessCondition
[6] AccessCondition OPTIONAL,
loadAccessCondition
[7] AccessCondition OPTIONAL,
executeAccessCondition
[8] AccessCondition OPTIONAL,
deleteAccessCondition
[9] AccessCondition OPTIONAL,
editAccessCondition
[10] AccessCondition OPTIONAL,
--
-- The following fields are used to record lists of objects placed
-- under the control of this ACCESS-CONTROL-LIST object.
-- They will be referred to collectively as the Controlled Object Lists
--
accessControlLists
[11] IMPLICIT SEQUENCE OF Access-Control-List-instance,
domains
[12] IMPLICIT SEQUENCE OF Domain-instance,
programInvocations
[13] IMPLICIT SEQUENCE OF Program-Invocation-instance,
unitControls
[14] IMPLICIT SEQUENCE OF Unit-Control-instance
IF (vadr)
, unnamedVariables
[15] IMPLICIT SEQUENCE OF Unnamed-Variable-instance
ELSE
, unnamedVariables
[15] IMPLICIT NULL
ENDIF
IF (vnam)
, namedVariables
[16] IMPLICIT SEQUENCE OF Named-Variable-instance
IF (vlis)
, namedVariableLists
[17] IMPLICIT SEQUENCE OF Named-Variable-List-instance
ELSE
, namedVariableLists
[17] IMPLICIT NULL
ENDIF
, namedTypes
[18] IMPLICIT SEQUENCE OF Named-Type-instance
ELSE
, namedVariables
[16] IMPLICIT NULL,
namedVariableLists
[17] IMPLICIT NULL,
namedTypes
[18] IMPLICIT NULL
ENDIF
, dataExchanges
[19] IMPLICIT SEQUENCE OF Data-Exchange-instance,
semaphores
[20] IMPLICIT SEQUENCE OF Semaphore-instance,
operatorStations
[21] IMPLICIT SEQUENCE OF Operator-Station-instance,
eventConditions
[22] IMPLICIT SEQUENCE OF Event-Condition-instance,
eventActions
[23] IMPLICIT SEQUENCE OF Event-Action-instance,
eventEnrollments
[24] IMPLICIT SEQUENCE OF Event-Enrollment-instance,
journals
[25] IMPLICIT SEQUENCE OF Journal-instance,
...
IF (cspi)
, eventConditionLists
[26] IMPLICIT SEQUENCE OF Event-Condition-List-instance
ENDIF
} } }
Domain-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
capabilities [3] IMPLICIT SEQUENCE OF MMSString,
state [4] IMPLICIT DomainState,
-- The aAssociation is not included
accessControl
[5] IMPLICIT Access-Control-List-instance,
sharable [6] IMPLICIT BOOLEAN,
programInvocations
[7] IMPLICIT SEQUENCE OF Program-Invocation-instance
-- uploadsInProgress is not included
IF (vnam)
, namedVariables
[8] IMPLICIT SEQUENCE OF Named-Variable-instance
IF (vlis)
, namedVariableLists
[9] IMPLICIT SEQUENCE OF Named-Variable-List-instance
ELSE
, namedVariableLists
[9] IMPLICIT NULL
ENDIF
, namedTypes
[10] IMPLICIT SEQUENCE OF Named-Type-instance
ELSE
, namedVariables
[8] IMPLICIT NULL,
namedVariableLists
[9] IMPLICIT NULL,
namedTypes
[10] IMPLICIT NULL
ENDIF
, eventConditions
[11] IMPLICIT SEQUENCE OF Event-Condition-instance,
eventActions
[12] IMPLICIT SEQUENCE OF Event-Action-instance,
eventEnrollments
[13] IMPLICIT SEQUENCE OF Event-Enrollment-instance
IF (cspi)
, eventConditionLists
[14] IMPLICIT SEQUENCE OF Event-Condition-List-instance
ENDIF
} } }
Program-Invocation-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
programInvocationState
[3] IMPLICIT ProgramInvocationState,
domains
[4] IMPLICIT SEQUENCE OF Domain-instance,
accessControl
[5] IMPLICIT SEQUENCE OF Access-Control-List-instance,
reusable
[6] IMPLICIT BOOLEAN,
monitor
[7] IMPLICIT BOOLEAN,
-- The following three fields shall all be present if the value of
-- monitor is true.
-- If present, the &name field of each object instance
-- shall have a value equal to the
-- &name field of this instance of the PROGRAM-INVOCATION.
eventCondition
[8] IMPLICIT SEQUENCE OF Event-Condition-instance OPTIONAL,
eventAction
[9] IMPLICIT SEQUENCE OF Event-Action-instance OPTIONAL,
eventEnrollment
[10] IMPLICIT SEQUENCE OF Event-Enrollment-instance OPTIONAL,
executionArgument
[11] MMSString,
...
IF (csr)
, control
[12] IMPLICIT Control-State,
controlling-Program-Invocation
[13] IMPLICIT Program-Invocation-instance,
-- The following field shall be present
-- if and only if the value of the &control field is controlling.
controlled-Program-Invocations
[14] IMPLICIT SEQUENCE OF Program-Invocation-instance OPTIONAL
ENDIF
} } }
Unit-Control-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl
[3] IMPLICIT Access-Control-List-instance,
domains
[4] IMPLICIT SEQUENCE OF Domain-instance,
programInvocations
[5] IMPLICIT SEQUENCE OF Program-Invocation-instance
} } }
Unnamed-Variable-instance ::= SEQUENCE {
address [0] Address,
accessControl [1] IMPLICIT Access-Control-List-instance,
typeDescription [2] TypeDescription
}
Named-Variable-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl
[3] IMPLICIT Access-Control-List-instance,
typeDescription [4] TypeDescription
IF ( vadr )
, address [5] Address OPTIONAL
ELSE
, [5] NULL
ENDIF
IF ( sem )
, meaning [6] IMPLICIT VisibleString OPTIONAL
ENDIF
} } }
Named-Variable-List-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl
[3] IMPLICIT Access-Control-List-instance,
listOfVariables
[4] IMPLICIT SEQUENCE OF Variable-List-Item-instance
} } }
Variable-List-Item-instance ::= SEQUENCE {
-- one and only one of the following two lines shall appear
IF ( vadr )
unnamedItem [0] IMPLICIT Unnamed-Variable-instance OPTIONAL
ELSE
unnamedItem [0] IMPLICIT NULL OPTIONAL
ENDIF
IF ( vnam )
, namedItem [1] IMPLICIT Named-Variable-instance OPTIONAL
ELSE
, namedItem [1] IMPLICIT NULL OPTIONAL
ENDIF
IF (valt)
-- the following specification may be included
, alternateAccess [2] IMPLICIT AlternateAccess OPTIONAL
ENDIF
}
Named-Type-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
typeDescription [4] TypeDescription
IF (sem)
, meaning [5] IMPLICIT VisibleString OPTIONAL
ENDIF
} } }
Data-Exchange-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
request [4] IMPLICIT SEQUENCE OF TypeDescription,
response [5] IMPLICIT SEQUENCE OF TypeDescription,
linked [6] IMPLICIT BOOLEAN,
-- The following attribute shall appear if an only if the value of &linked is true.
programInvocation [7] IMPLICIT Program-Invocation-instance OPTIONAL
} } }
Semaphore-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
class [4] IMPLICIT ENUMERATED {
token,
pool },
-- If the value of &class is token, the following field shall appear
numberOfTokens [5] IMPLICIT INTEGER OPTIONAL,
-- If the value of &class is pool, the following field shall appear
namedTokens [6] IMPLICIT SEQUENCE OF VisibleString OPTIONAL,
eventCondition [7] IMPLICIT Event-Condition-instance
} } }
Operator-Station-instance ::= SEQUENCE {
name [0] IMPLICIT Identifier,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
stationType [4] IMPLICIT ENUMERATED {
entry,
display,
entry-display }
} } }
Event-Condition-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
ecClass [4] IMPLICIT EC-Class,
ecState [5] IMPLICIT EC-State,
priority [6] IMPLICIT Priority,
severity [7] IMPLICIT Severity,
eventEnrollments [8] IMPLICIT SEQUENCE OF Event-Enrollment-instance,
-- The following fields shall be present
-- if and only if the value of &ecClass is monitored.
enabled [9] IMPLICIT BOOLEAN OPTIONAL,
alarmSummaryReports [10] IMPLICIT BOOLEAN OPTIONAL,
monitoredVariable CHOICE {
named [11] IMPLICIT Named-Variable-instance,
unnamed [12] IMPLICIT Unnamed-Variable-instance,
unspecified [13] IMPLICIT NULL } OPTIONAL,
evaluationInterval [14] IMPLICIT INTEGER OPTIONAL,
...
IF (cspi)
, displayEnhancement CHOICE {
IF (des)
text [15] MMSString
ENDIF
IF (dei)
, number [16] IMPLICIT INTEGER
ENDIF
, none [17] IMPLICIT NULL
},
group-Priority-Override CHOICE {
priority [18] IMPLICIT Priority,
undefined [19] IMPLICIT NULL
} OPTIONAL,
referencingEventConditionLists
[20] IMPLICIT SEQUENCE OF Event-Condition-List-instance
ENDIF
} } }
Event-Action-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
confirmedServiceRequest [4] ConfirmedServiceRequest,
modifiers [5] IMPLICIT SEQUENCE OF Modifier,
eventEnrollments
[6] IMPLICIT SEQUENCE OF Event-Enrollment-instance
} } }
Event-Enrollment-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
eeClass [4] IMPLICIT EE-Class ,
eventCondition [5] IMPLICIT Event-Condition-instance,
ecTransitions [6] IMPLICIT Transitions,
-- The following parameter is present if and only if the
-- value of &eeClass is modifier.
remainingDelay CHOICE {
time [7] IMPLICIT INTEGER,
forever [8] IMPLICIT NULL } OPTIONAL,
-- The remaining parameters are present if and only if the
-- value of &eeClass is notification.
eventAction [9] IMPLICIT Event-Action-instance OPTIONAL,
duration [10] IMPLICIT EE-Duration OPTIONAL,
clientApplication [11] IMPLICIT ApplicationReference OPTIONAL,
aaRule [12] IMPLICIT AlarmAckRule OPTIONAL,
...
IF (cspi)
, displayEnhancement CHOICE {
IF (des)
text [13] MMSString
ENDIF
IF (dei)
, number [14] IMPLICIT INTEGER
ENDIF
, none [15] IMPLICIT NULL
}
ENDIF
} } }
Event-Condition-List-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl
[3] IMPLICIT Access-Control-List-instance,
eventConditions
[4] IMPLICIT SEQUENCE OF Event-Condition-instance
IF (recl)
, eventConditionLists
[5] IMPLICIT SEQUENCE OF Event-Condition-List-instance,
referencingEventConditionLists
[6] IMPLICIT SEQUENCE OF Event-Condition-List-instance
ENDIF
} } }
Journal-instance ::= SEQUENCE {
name [0] ObjectName,
definition CHOICE {
reference [1] IMPLICIT OBJECT IDENTIFIER,
details [2] IMPLICIT SEQUENCE {
accessControl [3] IMPLICIT Access-Control-List-instance,
entries [4] IMPLICIT SEQUENCE OF Journal-Entry-instance
} } }
Journal-Entry-instance ::= SEQUENCE {
journal [0] IMPLICIT Journal-instance,
entry [1] IMPLICIT OCTET STRING,
clientApplication [2] IMPLICIT ApplicationReference,
timeStamp [3] IMPLICIT TimeOfDay,
orderOfReceipt [4] IMPLICIT INTEGER,
informationType [5] IMPLICIT ENUMERATED {
annotation,
event-data,
data },
-- The following attribute shall appear if and only if the
-- value of &informationType is annotation.
textComment [6] MMS255String OPTIONAL,
--The following attribute shall appear if and only if the
-- value of &informationType is event-data.
eventTransitionRecord [7] IMPLICIT SEQUENCE {
name [8] ObjectName,
currentState [9] IMPLICIT EC-State
} OPTIONAL,
-- The following attribute shall appear if and only if the
-- value of &informationType is data or event-data.
journalVariables [10] IMPLICIT SEQUENCE OF SEQUENCE {
variableTag [11] MMS255String,
valueSpecification [12] Data
} OPTIONAL
}
Service-and-Parameter-CBBs ::= SEQUENCE {
services-Client [0] IMPLICIT ServiceSupportOptions,
services-Server [1] IMPLICIT ServiceSupportOptions,
parameters [2] IMPLICIT ParameterSupportOptions,
nest [3] IMPLICIT INTEGER
IF (csr cspi)
, extendedServices-Client [4] IMPLICIT AdditionalSupportOptions,
extendedServices-Server [5] IMPLICIT AdditionalSupportOptions
ELSE
, extendedServices-Client [4] IMPLICIT NULL,
extendedServices-Server [5] IMPLICIT NULL
ENDIF
IF (cspi)
, extendedParameters [6] IMPLICIT AdditionalCBBOptions
ELSE
, extendedParameters [6] IMPLICIT NULL
ENDIF
, generalManagement [7] IMPLICIT GeneralManagementParameters,
vMDSupport [8] IMPLICIT VMDSupportParameters,
domainManagement [9] IMPLICIT DomainManagementParameters,
programInvocation [10] IMPLICIT ProgramInvocationManagementParameters,
variableAccess [11] IMPLICIT VariableAccessParameters,
dataParameters [12] IMPLICIT DataParameters,
semaphoreManagement [13] IMPLICIT SemaphoreManagementParameters,
operatorCommunication [14] IMPLICIT OperatorCommunicationParameters,
errors [15] IMPLICIT ErrorParameters,
fileManagement [16] IMPLICIT FileManagementParameters
}
GeneralManagementParameters ::= SEQUENCE {
localDetail [0] MMSString,
supportForTime [1] IMPLICIT SEQUENCE {
timeOfDay [2] IMPLICIT BOOLEAN,
timeSequence [3] IMPLICIT BOOLEAN
},
granularityOfTime [4] IMPLICIT INTEGER
}
VMDSupportParameters ::= SEQUENCE {
localDetail [0] MMSString,
extendedDerivation [1] MMSString
-- method used to perform extended derivation
}
DomainManagementParameters ::= SEQUENCE {
loadDataOctet [0] MMSString,
-- description of the format of Load Data if the octet string form is used
loadDataSyntax [1] IMPLICIT SEQUENCE OF OBJECT IDENTIFIER,
-- identifier of the Abstract Syntaxes used
maxUploads [2] IMPLICIT INTEGER
}
ProgramInvocationManagementParameters ::= SEQUENCE {
executionArgMaxSize [0] IMPLICIT INTEGER,
executionArgParseRules [1] MMSString,
executionArgSyntaxes [2] IMPLICIT SEQUENCE OF OBJECT IDENTIFIER,
programLoction [3] MMSString,
-- syntax of the program Location notation
stepMode [4] IMPLICIT BOOLEAN
-- if true, step Mode is supported
}
VariableAccessParameters ::= SEQUENCE {
uninterruptibleAccess [0] MMSString,
-- conditions under which it is guaranteed
singleMode [1] IMPLICIT BOOLEAN,
unnamedMode [2] IMPLICIT BOOLEAN
}
DataParameters ::= SEQUENCE {
bit-string [0] IMPLICIT INTEGER OPTIONAL,
integer [1] IMPLICIT INTEGER OPTIONAL,
unsigned [2] IMPLICIT INTEGER OPTIONAL,
floating-point [3] IMPLICIT SEQUENCE {
total [4] IMPLICIT INTEGER,
exponent [5] IMPLICIT INTEGER } OPTIONAL,
octet-string [10] IMPLICIT INTEGER OPTIONAL,
visible-string [11] IMPLICIT INTEGER OPTIONAL,
binary-time [12] IMPLICIT BOOLEAN OPTIONAL,
bcd [13] IMPLICIT INTEGER OPTIONAL,
mmsString [14] IMPLICIT INTEGER OPTIONAL
}
SemaphoreManagementParameters ::= SEQUENCE {
algorithm [0] IMPLICIT MMSString
-- method of processing the &priority field
}
OperatorCommunicationParameters ::= SEQUENCE {
input-time-out [0] IMPLICIT INTEGER
}
ErrorParameters ::= SEQUENCE {
additionalCode [0] MMSString,
additionalDetial [1] IMPLICIT SEQUENCE {
size [2] IMPLICIT INTEGER,
syntax [3] MMSString
}
}
FileManagementParameters ::= SEQUENCE {
fileName [0] MMSString
}
END
ISO-9506-MMS-1A { iso standard 9506 part(2) mms-annex-version1(3) }
DEFINITIONS ::= BEGIN
EXPORTS
ObtainFile-Request,
ObtainFile-Response,
ObtainFile-Error,
FileOpen-Request,
FileOpen-Response,
FileRead-Request,
FileRead-Response,
FileClose-Request,
FileClose-Response,
FileRename-Request,
FileRename-Response,
FileRename-Error,
FileDelete-Request,
FileDelete-Response,
FileDirectory-Request,
FileDirectory-Response,
ScatteredAccessDescription,
DefineScatteredAccess-Request,
DefineScatteredAccess-Response,
GetScatteredAccessAttributes-Request,
GetScatteredAccessAttributes-Response;
IMPORTS
FileName,
ObjectName,
AlternateAccess,
VariableSpecification,
Identifier,
Integer32,
Unsigned32 FROM
ISO-9506-MMS-1 { iso standard 9506 part(2) mms-abstract-syntax-version1(1) }
ApplicationReference FROM
MMS-Environment-1 { iso standard 9506 part(2) mms-environment-version1 (4) };
ObtainFile-Request ::= SEQUENCE {
IF ( tpy )
sourceFileServer [0] IMPLICIT ApplicationReference OPTIONAL,
ENDIF
sourceFile [1] IMPLICIT FileName,
destinationFile [2] IMPLICIT FileName
}
ObtainFile-Response ::= NULL
ObtainFile-Error ::= INTEGER {
source-file (0),
destination-file (1)
} (0..1)
FileOpen-Request ::= SEQUENCE {
fileName [0] IMPLICIT FileName,
initialPosition [1] IMPLICIT Unsigned32 }
FileOpen-Response ::= SEQUENCE {
frsmID [0] IMPLICIT Integer32,
fileAttributes [1] IMPLICIT FileAttributes }
FileRead-Request ::= Integer32 -- FRSM ID
FileRead-Response ::= SEQUENCE {
fileData [0] IMPLICIT OCTET STRING,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT TRUE }
FileClose-Request ::= Integer32 -- FRSM ID
FileClose-Response ::= NULL
FileRename-Request ::= SEQUENCE {
currentFileName [0] IMPLICIT FileName,
newFileName [1] IMPLICIT FileName }
FileRename-Response ::= NULL
FileRename-Error ::= INTEGER {
source-file (0),
destination-file (1)
} (0..1)
FileDelete-Request ::= FileName
FileDelete-Response ::= NULL
FileDirectory-Request ::= SEQUENCE {
fileSpecification [0] IMPLICIT FileName OPTIONAL,
continueAfter [1] IMPLICIT FileName OPTIONAL }
FileDirectory-Response ::= SEQUENCE {
listOfDirectoryEntry [0] SEQUENCE OF DirectoryEntry,
moreFollows [1] IMPLICIT BOOLEAN DEFAULT FALSE }
DirectoryEntry ::= SEQUENCE {
fileName [0] IMPLICIT FileName,
fileAttributes [1] IMPLICIT FileAttributes }
FileAttributes ::= SEQUENCE {
sizeOfFile [0] IMPLICIT Unsigned32, -- in octets
lastModified [1] IMPLICIT GeneralizedTime OPTIONAL }
ScatteredAccessDescription ::=SEQUENCE OF SEQUENCE {
componentName [0] IMPLICIT Identifier OPTIONAL,
variableSpecification [1] VariableSpecification
IF ( valt )
, alternateAccess [2] IMPLICIT AlternateAccess OPTIONAL
ENDIF
}
DefineScatteredAccess-Request ::= SEQUENCE {
scatteredAccessName [0] ObjectName,
scatteredAccessDescription [1] IMPLICIT ScatteredAccessDescription }
DefineScatteredAccess-Response ::= NULL
GetScatteredAccessAttributes-Request ::= ObjectName -- ScatteredAccessName
GetScatteredAccessAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
scatteredAccessDescription [1] IMPLICIT ScatteredAccessDescription
IF ( aco )
, accessControlList [2] IMPLICIT Identifier OPTIONAL
-- Shall not appear in minor version one or two
ENDIF
}
END