-- Generated by Asnp, the pretty-printer of France Telecom R&D (http://asn1.elibel.tm.fr/asnp/) Remote-Operations-Generic-ROS-PDUs {joint-iso-itu-t remote-operations(4) generic-ROS-PDUs(6) version1(0)} DEFINITIONS IMPLICIT TAGS ::= BEGIN -- exports everything IMPORTS OPERATION, ERROR FROM Remote-Operations-Information-Objects {joint-iso-itu-t remote-operations(4) informationObjects(5) version1(0)}; ROS{InvokeId:InvokeIdSet, OPERATION:Invokable, OPERATION:Returnable} ::= CHOICE { invoke [1] Invoke{{InvokeIdSet}, {Invokable}}, returnResult [2] ReturnResult{{Returnable}}, returnError [3] ReturnError{{Errors {{Returnable}}}}, reject [4] Reject } (CONSTRAINED BY { -- must conform to the above definition --} ! RejectProblem:general-unrecognizedPDU) Invoke{InvokeId:InvokeIdSet, OPERATION:Operations} ::= SEQUENCE { invokeId InvokeId(InvokeIdSet) (CONSTRAINED BY { -- must be unambiguous --} ! RejectProblem:invoke-duplicateInvocation), linkedId CHOICE {present [0] IMPLICIT present < InvokeId, absent [1] IMPLICIT NULL } (CONSTRAINED BY { -- must identify an outstanding operation --} ! RejectProblem:invoke-unrecognizedLinkedId) (CONSTRAINED BY { -- which has one or more linked operations--} ! RejectProblem:invoke-linkedResponseUnexpected) OPTIONAL, opcode OPERATION.&operationCode ({Operations} !RejectProblem:invoke-unrecognizedOperation), argument OPERATION.&ArgumentType ({Operations}{@opcode} !RejectProblem:invoke-mistypedArgument) OPTIONAL } (CONSTRAINED BY { -- must conform to the above definition --} ! RejectProblem:general-mistypedPDU) (WITH COMPONENTS { ..., linkedId ABSENT } | WITH COMPONENTS { ..., linkedId PRESENT, opcode (CONSTRAINED BY { -- must be in the &Linked field of the associated operation -- } !RejectProblem:invoke-unexpectedLinkedOperation) }) -- continued on the next page ReturnResult{OPERATION:Operations} ::= SEQUENCE { invokeId InvokeId (CONSTRAINED BY { -- must be that for an outstanding operation --} ! RejectProblem:returnResult-unrecognizedInvocation) (CONSTRAINED BY { -- which returns a result --} ! RejectProblem:returnResult-resultResponseUnexpected), result SEQUENCE {opcode OPERATION.&operationCode({Operations}) (CONSTRAINED BY { -- identified by invokeId --} ! RejectProblem:returnResult-unrecognizedInvocation), result OPERATION.&ResultType ({Operations}{@.opcode} ! RejectProblem:returnResult-mistypedResult)} OPTIONAL } (CONSTRAINED BY { -- must conform to the above definition --} ! RejectProblem:general-mistypedPDU) ReturnError{ERROR:Errors} ::= SEQUENCE { invokeId InvokeId (CONSTRAINED BY { -- must be that for an outstanding operation --} ! RejectProblem:returnError-unrecognizedInvocation) (CONSTRAINED BY { -- which returns an error --} ! RejectProblem:returnError-errorResponseUnexpected), errcode ERROR.&errorCode({Errors} !RejectProblem:returnError-unrecognizedError) (CONSTRAINED BY { -- must be in the &Errors field of the associated operation -- } !RejectProblem:returnError-unexpectedError), parameter ERROR.&ParameterType ({Errors}{@errcode} !RejectProblem:returnError-mistypedParameter) OPTIONAL } (CONSTRAINED BY { -- must conform to the above definition --} ! RejectProblem:general-mistypedPDU) Reject ::= SEQUENCE { invokeId InvokeId, problem CHOICE {general [0] GeneralProblem, invoke [1] InvokeProblem, returnResult [2] ReturnResultProblem, returnError [3] ReturnErrorProblem} } (CONSTRAINED BY { -- must conform to the above definition --} ! RejectProblem:general-mistypedPDU) GeneralProblem ::= INTEGER { unrecognizedPDU(0), mistypedPDU(1), badlyStructuredPDU(2)} -- continued on the next page InvokeProblem ::= INTEGER { duplicateInvocation(0), unrecognizedOperation(1), mistypedArgument(2), resourceLimitation(3), releaseInProgress(4), unrecognizedLinkedId(5), linkedResponseUnexpected(6), unexpectedLinkedOperation(7)} ReturnResultProblem ::= INTEGER { unrecognizedInvocation(0), resultResponseUnexpected(1), mistypedResult(2) } ReturnErrorProblem ::= INTEGER { unrecognizedInvocation(0), errorResponseUnexpected(1), unrecognizedError(2), unexpectedError(3), mistypedParameter(4)} RejectProblem ::= INTEGER { general-unrecognizedPDU(0), general-mistypedPDU(1), general-badlyStructuredPDU(2), invoke-duplicateInvocation(10), invoke-unrecognizedOperation(11), invoke-mistypedArgument(12), invoke-resourceLimitation(13), invoke-releaseInProgress(14), invoke-unrecognizedLinkedId(15), invoke-linkedResponseUnexpected(16), invoke-unexpectedLinkedOperation(17), returnResult-unrecognizedInvocation(20), returnResult-resultResponseUnexpected(21), returnResult-mistypedResult(22), returnError-unrecognizedInvocation(30), returnError-errorResponseUnexpected(31), returnError-unrecognizedError(32), returnError-unexpectedError(33), returnError-mistypedParameter(34)} InvokeId ::= CHOICE {present INTEGER, absent NULL } noInvokeId InvokeId ::= absent:NULL NoInvokeId InvokeId ::= {noInvokeId} Errors{OPERATION:Operations} ERROR ::= {Operations.&Errors} -- continued on the next page Bind{OPERATION:operation} ::= CHOICE { bind-invoke [16] OPERATION.&ArgumentType({operation}), bind-result [17] OPERATION.&ResultType({operation}), bind-error [18] OPERATION.&Errors.&ParameterType({operation}) } Unbind{OPERATION:operation} ::= CHOICE { unbind-invoke [19] OPERATION.&ArgumentType({operation}), unbind-result [20] OPERATION.&ResultType({operation}), unbind-error [21] OPERATION.&Errors.&ParameterType({operation}) } END -- end of generic ROS PDU definitions -- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D