-- =============================================================================
--               ITU-T Rec. X.722 (1992) | ISO/IEC 10165-4 : 1992
-- =============================================================================
--<OpenT.WebInfo "ITU-T Rec. X.722 (1992) | ISO/IEC 10165-4 : 1992"
--               "ITU-T Rec. X.722 (1992)">--
-- =========================================================
--<GDMO.Document "ITU-T Rec. X.722 (1992) | ISO/IEC 10165-4 : 1992">--

-- "Imported" Alises - references to other documents with non-standard names

--<GDMO.Alias "ITU-T Rec. X.721 (1992) | ISO/IEC 10165-2 : 1992"
--               "Rec. X.721 | ISO/IEC 10165-2 : 1992",
--               "Recommendation X.721 : 1992">--


-- x
-- <OpenT.INCLUDE "N:\formal-language\gdmo\database\itu-t\x\x721\1992\x721.gdm">--
-- x <OpenT.INCLUDE "O:\itu-t\x\x722\1992\ActionModule.asn">--
-- x <OpenT.INCLUDE "O:\itu-t\x\x722\1992\AttributeModule.asn">--
-- x <OpenT.INCLUDE "O:\itu-t\x\x722\1992\NotificationModule.asn">--
-- x <OpenT.INCLUDE "O:\itu-t\x\x722\1992\ParameterModule.asn">--
-- x <OpenT.INCLUDE "O:\itu-t\x\x722\1992\SMModule.asn">--


exampleObjectClass MANAGED OBJECT CLASS
   DERIVED FROM
      "ITU-T Rec. X.721 (1992) | ISO/IEC 10165-2 : 1992":top
      ;
   CHARACTERIZED BY examplePackage2
      ;
   CONDITIONAL PACKAGES
      examplePackage1 PACKAGE
         ACTIONS
            qOSResetAction,
            activate
            ;
         NOTIFICATIONS
            communicationError
            ;
      REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) package(4)
         examplepack1(0)}
            ;
      PRESENT IF !conformance class 2 of underlying resource implemented as
         described in ISO/IEC XXXX!
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) managedObjectClass(3)
   exampleclass(0)} ;

exampleNameBinding NAME BINDING
   SUBORDINATE OBJECT CLASS
      exampleObjectClass
      ;
   NAMED BY
      SUPERIOR OBJECT CLASS
      "ITU-T Rec. X.721 (1992) | ISO/IEC 10165-2 : 1992":system
      ;
   WITH ATTRIBUTE
            objectName
      ;
   BEHAVIOUR
      containmentBehaviour BEHAVIOUR
         DEFINED AS
            !A maximum of 3 instances of exampleObjectClass may be contained in
            any instance of "ITU-T Rec. X.721 | ISO/IEC 10165-2":system.!
            ;
      ;
   CREATE
         WITH-AUTOMATIC-INSTANCE-NAMING createErrorParameter
      ;
   DELETE
      DELETES-CONTAINED-OBJECTS
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) nameBinding(6)
   examplenb(0)} ;

pDUHeader PARAMETER
   CONTEXT
      EVENT-INFO
      ;
   WITH SYNTAX
      ParameterModule.PDUString
      ;
   BEHAVIOUR
      pDUHeaderBehaviour BEHAVIOUR
         DEFINED AS
            !PDU header. Carried in the CMIP eventInfo field.!
            ;
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) parameter(5)
   pduheaderparam(0)};

createErrorParameter PARAMETER
   CONTEXT
      SPECIFIC-ERROR
      ;
   WITH SYNTAX
      ParameterModule.ErrorInfo1
      ;
   BEHAVIOUR
      createErrorBehaviour BEHAVIOUR
         DEFINED AS
            !If the maximum number of instances of exampleObjectClass exist
            within the containing managed object, attempts to create additional
            instances will result in the return of a CMIP Processing Failure
            error where the SpecificErrorInfo field is of the form

            SpecificErrorInfo ::= SEQUENCE {

            errorid CMIP-SPECIFICERROR.&id ({SpecificErrorSet}), errorinfo
            CMIP-SPECIFICERROR.&Value ({SpecificErrorSet} {@.errorId}) }

            The OBJECT IDENTIFIER carried in errorid shall be the value under
            which this parameter definition is registered. The type carried in
            errorinfo shall be the type identified by the WITH SYNTAX construct
            of this parameter definition. The value carried by this type
            indicates the number of instances of this managed object class that
            currently exist in the containing managed object.!
            ;
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) parameter(5) createrror(1)};

serviceProviderErrorResponseReason PARAMETER
   CONTEXT
      ACTION-REPLY
      ;
   WITH SYNTAX
      ParameterModule.ServiceProviderErrorResponseReason
      ;
   BEHAVIOUR
      serviceProviderErrorResponseReasonBehaviour BEHAVIOUR
         DEFINED AS
            !Returned in the responseParameters field of the CMIP
            actionReplyInfo if responseCode has the value
            serviceProviderErrorResponse.!
            ;
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) parameter(5) sperrorrsp(2)};

examplePackage2 PACKAGE
   BEHAVIOUR
      exampleClassBehaviour
      ;
   ATTRIBUTES
      objectName GET,
      qOS-Error-Cause GET,
      qOS-Error-Counter PERMITTED VALUES AttributeModule.QOSCounterRange
         REQUIRED VALUES AttributeModule.QOSCounterRange GET ;
   ATTRIBUTE GROUPS qOS-Group
      ;
   NOTIFICATIONS protocolError
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) package(4) examplepack2(1)} ;

objectName ATTRIBUTE
   WITH ATTRIBUTE SYNTAX
      AttributeModule.ObjectName
      ;
   MATCHES FOR EQUALITY
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) attribute(7) objectname(0)} ;

qOS-Error-Cause ATTRIBUTE
   WITH ATTRIBUTE SYNTAX
      AttributeModule.QOSErrorCause
      ;
   MATCHES FOR EQUALITY
      ;
   BEHAVIOUR
      qOSErrorBehaviour
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) attribute(7) qoscause(1)} ;

qOS-Error-Counter ATTRIBUTE
   WITH ATTRIBUTE SYNTAX
      AttributeModule.QOSErrorCounter
      ;
   MATCHES FOR EQUALITY,
      ORDERING
      ;
   BEHAVIOUR
      qOSCounterBehaviour
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) attribute(7) qoscount(2)} ;

qOS-Group ATTRIBUTE GROUP
   GROUP ELEMENTS
         qOS-Error-Cause,
         qOS-Error-Counter
      ;
   DESCRIPTION
         !Attribute group that includes all QOS-related attributes in a managed
         object class!
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) attributeGroup(8)
   qosgroup(0)} ;

qOSResetAction ACTION
   BEHAVIOUR
      reset BEHAVIOUR
         DEFINED AS
            !<Definition of the reset behaviour and its effect on the operation of the managed object, etc..>!
            ;
      ;
   MODE CONFIRMED
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) action(9) reset(0)} ;

activate ACTION
   BEHAVIOUR
      activateBehaviour BEHAVIOUR
         DEFINED AS
            !Enables the managed object for operation. If the action succeeds,
            the value successResponse is returned in the responseCode parameter
            of the CMIP actionReplyInfo. If the action fails because of a
            problem with the underlying service provider, responseCode is set to
            the value serviceProviderErrorResponse and the parameter
            serviceProviderErrorResponseReason returned to indicate the cause of
            the problem.!
            ;
      ;
   MODE CONFIRMED
      ;
   PARAMETERS
      serviceProviderErrorResponseReason
      ;
   WITH REPLY SYNTAX
      ActionModule.ActivateReply
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) action(9) activate(1)} ;

communicationError NOTIFICATION
   BEHAVIOUR
      communicationErrorBehaviour
      ;
   WITH INFORMATION SYNTAX
      NotificationModule.ErrorInfo
      ;
   WITH REPLY SYNTAX
      NotificationModule.ErrorResult
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) notification(10)
   commerror(0)} ;

protocolError NOTIFICATION
   BEHAVIOUR
      protocolErrorBehaviour BEHAVIOUR
         DEFINED AS
            !Generated when a protocol entity receives a PDU which is invalid or
            contains a protocol error. The notification includes the header of
            the received PDU.!
            ;
      ;
   PARAMETERS
      pDUHeader
      ;
   WITH INFORMATION SYNTAX
      NotificationModule.ProtocolError
      ;
REGISTERED AS {joint-iso-itu-t ms(9) smi(3) part4(4) notification(10)
   protoerror(1)};

qOSCounterBehaviour BEHAVIOUR
   DEFINED AS
      !The QOS Error Counter attribute is a wraparound counter that is
      incremented by one for every occurrence of a QOS Error. Its value is a
      positive integer, whose range is specified in any package that references
      this definition. When the counter reaches its maximum value, the next
      increment causes its value to return to zero.!
      ;

qOSErrorBehaviour BEHAVIOUR
   DEFINED AS
      !The QOS Error Cause attribute indicates the reason for a failure in
      quality of service associated with the managed object.

         NOTE - The relationship between the permitted attribute values and the
         operation of the managed object itself are defined by the behaviour
         definitions associated with the managed object class definition. !;

communicationErrorBehaviour BEHAVIOUR
   DEFINED AS
      !The CommunicationError notification is generated by the managed object
      class when a communication error is detected by the managed object. The
      notification may contain any combination of the parameters Probable Cause,
      Severity, Trend Indication, Backed Up Status, Diagnostic Info, Proposed
      Repair Action, Threshold Info, State Change and Other Info.

      NOTE - The precise definition of what constitutes a communication error
      and the parameter values that apply is managed object class specific. In a
      practical example, this Behaviour definition could, for example, refer to
      pieces of specification in a base standard in order to specify the
      behaviour. !
      ;

exampleClassBehaviour BEHAVIOUR
   DEFINED AS
      !<....Description of managed object class behaviour, including

         - How its attributes attain particular values and what they mean,

         - What circumstances cause notifications to be generated,

         - Etc. >!
      ; -- corrected 6/30

-- =============================================================================
--  Formatted by OpenT2 Version 5.5.1.32 on Fri Jul 02 09:07:01 2004