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.asn

781 lines
30 KiB
Groff

--
-- Part of the ASN.1-Specification for MMS
-- tries to include only those parts relevant for IEC 61850
-- source: http://www.nettedautomation.com/standardization/iso/tc184/sc5/wg2/mms_syntax/Version1999/mms_syntax.html
ASN1 { iso standard 9506 part(2) mms-general-module-version(2) } DEFINITIONS ::= BEGIN
MMSpdu ::= CHOICE {
confirmed-RequestPDU [0] IMPLICIT Confirmed-RequestPDU,
confirmed-ResponsePDU [1] IMPLICIT Confirmed-ResponsePDU,
confirmed-ErrorPDU [2] IMPLICIT Confirmed-ErrorPDU,
unconfirmed-PDU [3] IMPLICIT Unconfirmed-PDU,
rejectPDU [4] IMPLICIT RejectPDU,
initiate-RequestPDU [8] IMPLICIT Initiate-RequestPDU,
initiate-ResponsePDU [9] IMPLICIT Initiate-ResponsePDU,
initiate-ErrorPDU [10] IMPLICIT Initiate-ErrorPDU,
conclude-RequestPDU [11] IMPLICIT Conclude-RequestPDU
}
Confirmed-RequestPDU ::= SEQUENCE {
invokeID Unsigned32,
service ConfirmedServiceRequest
}
ConfirmedServiceRequest ::= CHOICE {
getNameList [1] IMPLICIT GetNameList-Request,
read [4] IMPLICIT Read-Request,
write [5] IMPLICIT Write-Request,
getVariableAccessAttributes [6] GetVariableAccessAttributes-Request,
defineNamedVariableList [11] IMPLICIT DefineNamedVariableList-Request,
getNamedVariableListAttributes [12] GetNamedVariableListAttributes-Request,
deleteNamedVariableList [13] IMPLICIT DeleteNamedVariableList-Request,
fileOpen [72] IMPLICIT FileOpen-Request,
fileRead [73] IMPLICIT FileRead-Request,
fileClose [74] IMPLICIT FileClose-Request,
fileDelete [76] IMPLICIT FileDelete-Request,
fileDirectory [77] IMPLICIT FileDirectory-Request
}
Unconfirmed-PDU ::= SEQUENCE {
service UnconfirmedService
}
UnconfirmedService ::= CHOICE {
informationReport [0] IMPLICIT InformationReport
}
Confirmed-ResponsePDU ::= SEQUENCE {
invokeID Unsigned32,
service ConfirmedServiceResponse
}
ConfirmedServiceResponse ::= CHOICE {
getNameList [1] IMPLICIT GetNameList-Response,
read [4] IMPLICIT Read-Response,
write [5] IMPLICIT Write-Response,
getVariableAccessAttributes [6] IMPLICIT GetVariableAccessAttributes-Response,
defineNamedVariableList [11] IMPLICIT DefineNamedVariableList-Response,
getNamedVariableListAttributes [12] IMPLICIT GetNamedVariableListAttributes-Response,
deleteNamedVariableList [13] IMPLICIT DeleteNamedVariableList-Response,
fileOpen [72] IMPLICIT FileOpen-Response,
fileRead [73] IMPLICIT FileRead-Response,
fileClose [74] IMPLICIT FileClose-Response,
fileDelete [76] IMPLICIT FileDelete-Response,
fileDirectory [77] IMPLICIT FileDirectory-Response
}
Confirmed-ErrorPDU ::= SEQUENCE {
invokeID [0] IMPLICIT Unsigned32,
modifierPosition [1] IMPLICIT Unsigned32 OPTIONAL,
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)
-- },
application_reference [1] IMPLICIT INTEGER,
-- {
-- other (0),
-- aplication-unreachable (1),
-- connection-lost (2),
-- application-reference-invalid (3),
-- context-unsupported (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)
-- },
resource [3] IMPLICIT INTEGER,
-- {
-- other (0),
-- memory-unavailable (1),
-- processor-resource-unavailable (2),
-- mass-storage-unavailable (3),
-- capability-unavailable (4),
-- capability-unknown (5)
-- },
service [4] IMPLICIT INTEGER,
-- {
-- other (0),
-- primitives-out-of-sequence (1),
-- object-state-conflict (2),
-- pdu-size (3),
-- continuation-invalid (4),
-- object-constraint-conflict (5)
-- },
service_preempt [5] IMPLICIT INTEGER,
-- {
-- other (0),
-- timeout (1),
-- deadlock (2),
-- cancel (3)
-- },
time_resolution [6] IMPLICIT INTEGER,
-- {
-- other (0),
-- unsupportable-time-resolution (1)
-- },
access [7] IMPLICIT INTEGER,
-- {
-- other (0),
-- object-access-unsupported (1),
-- object-non-existent (2),
-- object-access-denied (3),
-- object-invalidated (4)
-- },
initiate [8] IMPLICIT INTEGER,
-- {
-- other (0),
-- version-incompatible (1),
-- max-segment-insufficient (2),
-- max-services-outstanding-calling-insufficient (3),
-- max-services-outstanding-called-insufficient (4),
-- service-CBB-insufficient (5),
-- parameter-CBB-insufficient (6),
-- nesting-level-insufficient (7)
-- },
conclude [9] IMPLICIT INTEGER,
-- {
-- other (0),
-- further-communication-required (1)
-- },
cancel [10] IMPLICIT INTEGER,
-- {
-- other (0),
-- invoke-id-unknown (1),
-- cancel-not-possible (2)
-- },
file [11] IMPLICIT INTEGER,
-- {
-- other (0),
-- filename-ambiguous (1),
-- file-busy (2),
-- filename-syntax_Error (3),
-- content-type-invalid (4),
-- position-invalid (5),
-- file-acces-denied (6),
-- file-non-existent (7),
-- duplicate-filename (8),
-- insufficient-space-in-filestore (9)
-- },
others [12] IMPLICIT INTEGER
},
additionalCode [1] IMPLICIT INTEGER OPTIONAL,
additionalDescription [2] IMPLICIT VisibleString OPTIONAL
-- serviceSpecificInformation [3] CHOICE
-- {
-- obtainFile [0] IMPLICIT ObtainFile_Error,
-- start [1] IMPLICIT Start_Error,
-- stop [2] IMPLICIT Stop_Error,
-- resume [3] IMPLICIT Resume_Error,
-- reset [4] IMPLICIT Reset_Error,
-- deleteVariableAccess [5] IMPLICIT DeleteVariableAccess_Error,
-- deleteNamedVariableList [6] IMPLICIT DeleteNamedVariableList_Error,
-- deleteNamedType [7] IMPLICIT DeleteNamedType_Error,
-- defineEventEnrollment_Error [8] DefineEventEnrollment_Error,
-- fileRename [9] IMPLICIT FileRename_Error
-- this one is neither in this ASN nor in the IMPORTS
-- additionalService [10] AdditionalServiceError
-- } OPTIONAL
}
TimeOfDay ::= OCTET STRING (SIZE(4|6))
BasicIdentifier ::= 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..32))
Identifier ::= VisibleString
Integer8 ::= INTEGER(-128..127)
Integer16 ::= INTEGER(-32768..32767)
Integer32 ::= INTEGER(-2147483648..2147483647)
Unsigned8 ::= INTEGER(0..255)
Unsigned16 ::= INTEGER(0..65535)
Unsigned32 ::= INTEGER(0..4294967295)
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
-- {
-- namedVariable (0),
-- scatteredAccess (1),
-- namedVariableList (2),
-- namedType (3),
-- 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
-- }
}
MMSString ::= VisibleString
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
}
}
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
}
}
Initiate-ErrorPDU ::= ServiceError
Conclude-RequestPDU ::= NULL
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),
-- max-recursion-exceeded (8),
-- value-out-of-range (9)
-- },
confirmed-responsePDU [2] IMPLICIT INTEGER,
-- {
-- other (0),
-- unrecognized-service (1),
-- invalid-invokeID (2),
-- invalid-result (3),
-- max-recursion-exceeded (5),
-- value-out-of-range (6)
-- },
confirmed-errorPDU [3] IMPLICIT INTEGER,
-- {
-- other (0),
-- unrecognized-service (1),
-- invalid-invokeID (2),
-- invalid-serviceError (3),
-- value-out-of-range (4)
-- } ,
unconfirmedPDU [4] IMPLICIT INTEGER,
-- {
-- other (0),
-- unrecognized-service (1),
-- invalid-argument (2),
-- max-recursion-exceeded (3),
-- value-out-of-range (4)
-- },
pdu-error [5] IMPLICIT INTEGER,
-- {
-- unknown-pdu-type (0),
-- invalid-pdu (1),
-- illegal-acse-mapping (2)
-- },
cancel-requestPDU [6] IMPLICIT INTEGER,
-- {
-- other (0),
-- invalid-invokeID (1)
-- },
cancel-responsePDU [7] IMPLICIT INTEGER,
-- {
-- other (0),
-- invalid-invokeID (1)
-- },
cancel-errorPDU [8] IMPLICIT INTEGER,
-- {
-- other (0),
-- invalid-invokeID (1),
-- invalid-serviceError (2),
-- value-out-of-range (3)
-- },
conclude-requestPDU [9] IMPLICIT INTEGER,
-- {
-- other (0),
-- invalid-argument (1)
-- },
conclude-responsePDU [10] IMPLICIT INTEGER,
-- {
-- other (0),
-- invalid-result (1)
-- },
conclude-errorPDU [11] IMPLICIT INTEGER
-- {
-- other (0),
-- invalid-serviceError (1),
-- value-out-of-range (2)
-- }
}
}
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
}
TypeSpecification ::= CHOICE {
-- typeName [0] ObjectName,
typeDescription TypeDescription
}
AlternateAccess ::= SEQUENCE OF CHOICE {
unnamed AlternateAccessSelection
-- named [5] IMPLICIT SEQUENCE {
-- componentName [0] CHOICE {
-- basic BasicIdentifier,
-- extended ExtendedIdentifier
-- },
-- access AlternateAccessSelection
-- }
}
AlternateAccessSelection ::= CHOICE {
selectAlternateAccess [0] IMPLICIT SEQUENCE {
accessSelection CHOICE {
component [0] CHOICE {
basic BasicIdentifier --,
--extended ExtendedIdentifier
}, -- component
index [1] IMPLICIT Unsigned32, -- 1 array element
indexRange [2] IMPLICIT SEQUENCE { -- array elements
lowIndex [0] IMPLICIT Unsigned32,
numberOfElements [1] IMPLICIT Unsigned32
},
allElements [3] IMPLICIT NULL -- all array elements
},
alternateAccess AlternateAccess
},
selectAccess CHOICE {
component [1] CHOICE {
basic BasicIdentifier --,
--extended ExtendedIdentifier
}, -- component
index [2] IMPLICIT Unsigned32, -- 1 array element
indexRange [3] IMPLICIT SEQUENCE { -- array elements
lowIndex [0] IMPLICIT Unsigned32,
numberOfElements [1] IMPLICIT Unsigned32
},
allElements [4] IMPLICIT NULL -- all array elements
}
}
AccessResult ::= CHOICE {
failure [0] IMPLICIT DataAccessError,
success Data
}
Data ::= CHOICE {
-- context tag 0 is reserved for AccessResult
array [1] IMPLICIT SEQUENCE OF Data,
structure [2] IMPLICIT SEQUENCE OF Data,
--boolean [3] IMPLICIT BOOLEAN,
bool [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,
utc-time [17] IMPLICIT UtcTime -- added by IEC61850 8.1 G3
}
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)
--}
VariableAccessSpecification ::= CHOICE {
listOfVariable [0] IMPLICIT VariableDefs,
variableListName [1] ObjectName
}
VariableDefs ::= SEQUENCE OF SEQUENCE {
variableSpecification VariableSpecification,
alternateAccess [5] IMPLICIT AlternateAccess OPTIONAL
}
VariableSpecification ::= CHOICE {
name [0] ObjectName
-- address [1] Address,
-- variableDescription [2] IMPLICIT SEQUENCE {
-- address Address,
-- typeSpecificationTypeSpecification
-- },
-- the following element is present only to support the services
-- defined in annex E
-- scatteredAccessDescription [3] IMPLICIT ScatteredAccessDescription,
-- 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 {
name [0] ObjectName
-- address [1] Address
}
GetVariableAccessAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
-- address [1] Address OPTIONAL,
typeDescription [2] TypeDescription
-- accessControlList [3] CHOICE {
-- basic BasicIdentifier,
-- extended ExtendedIdentifier
-- } OPTIONAL,
-- meaning [4] ObjectName OPTIONAL
}
DefineNamedVariableList-Request ::= SEQUENCE {
variableListName ObjectName,
listOfVariable [0] IMPLICIT VariableDefs
}
DefineNamedVariableList-Response ::= NULL
GetNamedVariableListAttributes-Request ::= ObjectName -- VariableListName
GetNamedVariableListAttributes-Response ::= SEQUENCE {
mmsDeletable [0] IMPLICIT BOOLEAN,
listOfVariable [1] IMPLICIT VariableDefs
-- accessControlList [2] CHOICE {
-- basic BasicIdentifier,
-- extended ExtendedIdentifier
-- } OPTIONAL
}
DeleteNamedVariableList-Request ::= SEQUENCE {
scopeOfDelete [0] IMPLICIT INTEGER DEFAULT 0,
-- {
-- specific (0),
-- aa-specific (1),
-- domain (2),
-- vmd (3)
-- } DEFAULT specific,
listOfVariableListName [1] IMPLICIT SEQUENCE OF ObjectName OPTIONAL,
domainName [2] CHOICE {
basic BasicIdentifier --,
--extended ExtendedIdentifier
} OPTIONAL
}
DeleteNamedVariableList-Response ::= SEQUENCE {
numberMatched [0] IMPLICIT Unsigned32,
numberDeleted [1] IMPLICIT Unsigned32
}
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
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
}
FileName ::= SEQUENCE OF GraphicString
TypeDescription ::= CHOICE {
array [1] IMPLICIT SEQUENCE {
packed [0] IMPLICIT BOOLEAN DEFAULT FALSE,
numberOfElements [1] IMPLICIT Unsigned32,
elementType [2] TypeSpecification
},
structure [2] IMPLICIT SEQUENCE {
packed [0] IMPLICIT BOOLEAN DEFAULT FALSE,
components [1] IMPLICIT SEQUENCE OF SEQUENCE {
componentName [0] IMPLICIT Identifier OPTIONAL,
componentType [1] TypeSpecification
}
},
-- Simple Size Class
--boolean [3] IMPLICIT NULL,
bool [3] IMPLICIT NULL,
bit-string [4] IMPLICIT Integer32, -- BIT-STRING
integer [5] IMPLICIT Unsigned8, -- INTEGER
unsigned [6] IMPLICIT Unsigned8, -- UNSIGNED
floating-point [7] IMPLICIT SEQUENCE {
format-width Unsigned8, -- number of bits of
-- floating point value
-- including sign, exponent,
-- and fraction
exponent-width Unsigned8 -- size of exponent in bits
},
-- [8] is reserved
octet-string [9] IMPLICIT Integer32, -- OCTET-STRING
visible-string [10] IMPLICIT Integer32, -- VISIBLE-STRING
-- generalized-time [11] IMPLICIT NULL, ---- GENERALIZED-TIME
binary-time [12] IMPLICIT BOOLEAN, -- BINARY-TIME
-- bcd [13] IMPLICIT Unsigned8, ---- BCD
-- objId [15] IMPLICIT NULL,
--...,
mMSString [16] IMPLICIT Integer32, -- MMS String
utc-time [17] IMPLICIT NULL -- from IEC61850 8.1 G.2
}
UtcTime ::= OCTET STRING (SIZE (8))
ParameterSupportOptions ::= BIT STRING
--{
-- str1 (0), str2 (1), vnam (2), valt (3), vadr (4), vsca (5), tpy (6), vlis (7), real (8), cei (10)
--}
ServiceSupportOptions ::= BIT STRING
-- {
-- status (0),
-- getNameList (1),
-- identify (2),
-- rename (3),
-- read (4),
-- write (5),
-- getVariableAccessAttributes (6),
-- defineNamedVariable (7),
-- defineScatteredAccess (8),
-- getScatteredAccessAttributes (9),
-- deleteVariableAccess (10),
-- defineNamedVariableList (11),
-- getNamedVariableListAttributes (12),
-- deleteNamedVariableList (13),
-- defineNamedType (14),
-- getNamedTypeAttributes (15),
-- deleteNamedType (16),
-- input (17),
-- output (18),
-- takeControl (19),
-- relinquishControl (20),
-- defineSemaphore (21),
-- deleteSemaphore (22),
-- reportSemaphoreStatus (23),
-- reportPoolSemaphoreStatus (24),
-- reportSemaphoreEntryStatus (25),
-- initiateDownloadSequence (26),
-- downloadSegment (27),
-- terminateDownloadSequence (28),
-- initiateUploadSequence (29),
-- uploadSegment (30),
-- terminateUploadSequence (31),
-- requestDomainDownload (32),
-- requestDomainUpload (33),
-- loadDomainContent (34),
-- storeDomainContent (35),
-- deleteDomain (36),
-- getDomainAttributes (37),
-- createProgramInvocation (38),
-- deleteProgramInvocation (39),
-- start (40),
-- stop (41),
-- resume (42),
-- reset (43),
-- kill (44),
-- getProgramInvocationAttributes (45),
-- obtainFile (46),
-- defineEventCondition (47),
-- deleteEventCondition (48),
-- getEventConditionAttributes (49),
-- reportEventConditionStatus (50),
-- alterEventConditionMonitoring (51),
-- triggerEvent (52),
-- defineEventAction (53),
-- deleteEventAction (54),
-- getEventActionAttributes (55),
-- reportEventActionStatus (56),
-- defineEventEnrollment (57),
-- deleteEventEnrollment (58),
-- alterEventEnrollment (59),
-- reportEventEnrollmentStatus (60),
-- getEventEnrollmentAttributes (61),
-- acknowledgeEventNotification (62),
-- getAlarmSummary (63),
-- getAlarmEnrollmentSummary (64),
-- readJournal (65),
-- writeJournal (66),
-- initializeJournal (67),
-- reportJournalStatus (68),
-- createJournal (69),
-- deleteJournal (70),
-- getCapabilityList (71),
-- fileOpen (72),
-- fileRead (73),
-- fileClose (74),
-- fileRename (75),
-- fileDelete (76),
-- fileDirectory (77),
-- unsolicitedStatus (78),
-- informationReport (79),
-- eventNotification (80),
-- attachToEventCondition (81),
-- attachToSemaphore (82),
-- conclude (83),
-- cancel (84)
-- }
END