-- Module Q821-ASN1Module (Q.821:02/2000)
-- See also ITU-T Q.821 (02/2000)
-- See also the index of all ASN.1 assignments needed in this document

Q821-ASN1Module {itu-t(0) recommendation(0) q(17) q821(821) asn1Module(2)
  q821ASN1Module(0)} DEFINITIONS ::=
BEGIN

-- EXPORTS everything
IMPORTS
  BackedUpStatus, CorrelatedNotifications, EventTime, ObservedValue,
    PerceivedSeverity, ProbableCause, StartTime, StopTime, TrendIndication,
    ThresholdInfo
    FROM Attribute-ASN1Module {joint-iso-itu-t ms(9) smi(3) part2(2)
      asn1Module(2) 1}
  AlarmInfo
    FROM Notification-ASN1Module {joint-iso-itu-t ms(9) smi(3) part2(2)
      asn1Module(2) 2}
  AlarmStatus, NameType
    FROM ASN1DefinedTypesModule {itu-t(0) recommendation(0) m(13) gnm(3100)
      informationModel(0) asn1Modules(2) asn1DefinedTypesModule(0)}
  Attribute,
    AttributeId,
    -- Note: DistinguishedName, formerly imported from X.501 InformationFramework,
    --       is imported from X.711 CMIP.
    DistinguishedName, ObjectClass, ObjectInstance, EventTypeId, InvokeIDType,
    Scope, CMISFilter
    FROM CMIP-1 {joint-iso-itu-t ms(9) cmip(1) modules(0) protocol(3)}
  AE-title
    FROM ACSE-1 {joint-iso-itu-t association-control(2) modules(0) apdus(0)
      version1(1)}--  Note that the syntax of AE-title to be used is from ITU-T Rec. X.227|ISO/IEC 8650-1 and not "ANY"
  ;

q821InformationModel OBJECT IDENTIFIER ::=
  {itu-t(0) recommendation(0) q(17) q821(821) informationMode(0)}

q821StandardSpecificExtension OBJECT IDENTIFIER ::=
  {q821InformationModel standardSpecificExtension(0)}

q821ObjectClass OBJECT IDENTIFIER ::=
  {q821InformationModel managedObjectClass(3)}

q821Package OBJECT IDENTIFIER ::= {q821InformationModel package(4)}

q821Parameter OBJECT IDENTIFIER ::= {q821InformationModel parameter(5)}

q821NameBinding OBJECT IDENTIFIER ::= {q821InformationModel namebinding(6)}

q821Attribute OBJECT IDENTIFIER ::= {q821InformationModel attribute(7)}

q821AttributeGroup OBJECT IDENTIFIER ::=
  {q821InformationModel attributeGroup(8)}

q821Action OBJECT IDENTIFIER ::= {q821InformationModel action(9)}

q821Notification OBJECT IDENTIFIER ::= {q821InformationModel notification(10)}

managementOperationsScheduleEndTimeDefault StopTime ::= continual:NULL

AffectedObjectClass ::= OBJECT IDENTIFIER

AlarmStatusList ::= SET OF AlarmStatus

AlarmSummaryData ::= SEQUENCE OF ObjectAlarmSummary

AlarmSynchronizationData ::= SEQUENCE {
  alarmManagedObjectClass     ObjectClass,
  alarmManagedObjectInstance  ObjectInstance,
  eventTime                   EventTime OPTIONAL,
  eventType                   EventTypeId,
  COMPONENTS OF AlarmInfo
}

AlarmSynchronizationInfo ::= CHOICE {
  allObjectsRelativeToSuperior  [0]  NULL,
  scopedCriteria                [1]  ScopedCriteria,
  simpleObjectList              [2]  ObjectList
}

AlarmSummaryInfo ::= SEQUENCE {
  perceivedSeverity  [0]  PerceivedSeverity OPTIONAL,
  alarmStatus        [1]  AlarmStatus OPTIONAL,
  probableCause      [2]  ProbableCause OPTIONAL
}

CancelAlarmSynchronization ::= CancelledAlarmSynchronization

CancelledAlarmSynchronization ::= InvokeIDType

-- error response to action for Alarm Synchronization if cancelled prior to completion
CorrelatedRecordName ::=
  ObjectInstance

CountInterval ::= SEQUENCE {
  count      INTEGER,
  startTime  GeneralizedTime,
  window     TimeInterval
}

CountWindow ::= SEQUENCE {count   INTEGER,
                          window  TimeInterval
}

DestinationAddress ::= CHOICE {
  singleAddress  AE-title,
  groupAddress   GraphicString
}

GaugeParameters ::= CHOICE {
  up    [1]  SEQUENCE {high  ObservedValue,
                       low   ObservedValue},
  down  [2]  SEQUENCE {high  ObservedValue,
                       low   ObservedValue}
}

LogRecordId ::= NumericName

Interval ::= CHOICE {
  days     [0]  INTEGER,
  hours    [1]  INTEGER,
  minutes  [2]  INTEGER,
  seconds  [3]  INTEGER
}

InvalidBaseManagedObjectError ::= ObjectInstance

-- error response for an invalid Base Managed Object parameter
InvalidObjectInstanceError ::=
  ObjectInstance

-- error response for an invalid Object List Object Instance parameter
NoSuchInvokeIdError ::=
  InvokeIDType

-- error response to Cancel Alarm Synchronization request
NotificationId ::= INTEGER

NumericName ::= INTEGER

ObjectAlarmSummary ::= SEQUENCE {
  objectOfReference  ObjectOfReference,
  summaryInfo        SEQUENCE OF AlarmSummaryInfo
}

ObjectList ::= SET OF ObjectListChoice

ObjectListChoice ::= CHOICE {
  singleObject    [1]  ObjectInstance,
  rangeOfObjects  [2]  RangeOfObjects
}

--  The rangeOfObjects may be used to specify a group
--  of objects which are named in a contiguous manner
--  without having to specify each instance explicitly.
--  This mechanism may only be used to specify object
--  instances which use INTEGER as the final RDN of their DN.
--  To use this mechanism, the DN of the superior object and a range
--  of INTEGERs is specified. Each INTEGER in the range can be concatenated
--  with the DN of the superior object to form the DN of an indicated object.
ObjectOfReference ::=
  ObjectInstance

PerceivedSeverityList ::= SET OF PerceivedSeverity

ProbableCauseList ::= SET OF ProbableCause

Q821-ATTRIBUTE ::= CLASS {&id    OBJECT IDENTIFIER,
                          &Type  
}WITH SYNTAX {ID &id
              TYPE &Type
}

ProblemData ::= SEQUENCE {
  identifier    [0]  Q821-ATTRIBUTE.&id({SupportedAttributes}),
  significance  [1]  BOOLEAN DEFAULT FALSE,
  information
    [2]  Q821-ATTRIBUTE.&Type({SupportedAttributes}{@identifier})
}

SupportedAttributes Q821-ATTRIBUTE ::=
  {...}

RangeOfObjects ::= SEQUENCE {
  superiorObjectName  ObjectInstance,
  terminalRDNRange    TerminalRDNRange
}

ScopedCriteria ::= SEQUENCE {
  baseManagedObject  ObjectInstance,
  scope              Scope,
  criteria           CMISFilter DEFAULT and:{}
}

SimpleObjectList ::= SET OF ObjectInstance

StatusChange ::=
  SET OF
    SEQUENCE {statusAttributeID
                Q821-ATTRIBUTE.&id({SupportedStatusAttributes}),
              oldStatusValue
                [1]  Q821-ATTRIBUTE.&Type
                       ({SupportedStatusAttributes}{@.statusAttributeID})
                  OPTIONAL,
              newStatusValue
                [2]  Q821-ATTRIBUTE.&Type
                       ({SupportedStatusAttributes}{@.statusAttributeID})
    }

SupportedStatusAttributes Q821-ATTRIBUTE ::=
  {...}

SummaryContents ::= BIT STRING {
  includePerceivedSeverity(0), includeAlarmStatus(1), includeProbableCause(2)
}

SuspectObject ::= SEQUENCE {
  suspectObjectClass     OBJECT IDENTIFIER,
  suspectObjectInstance  ObjectInstance,
  failureProbability     INTEGER(0..100) OPTIONAL --in the range 1 ..100--
}

SuspectObjectList ::= SET OF SuspectObject

TerminalRDNRange ::= SEQUENCE {
  attributeId         OBJECT IDENTIFIER,
  firstObjectInRange  INTEGER,
  lastObjectInRange   INTEGER
}

Threshold ::= CHOICE {
  absoluteCount               [0]  INTEGER,
  countOverFixedTimeInterval  [1]  CountInterval,
  countOverSlidingWindow      [2]  CountWindow,
  valueAndDuration            [3]  ValueDuration,
  absoluteValue               [4]  REAL,
  gauge                       [5]  GaugeParameters
}

TimeInterval ::= SEQUENCE {
  day     [0]  INTEGER(0..31) DEFAULT 0,
  hour    [1]  INTEGER(0..23) DEFAULT 0,
  minute  [2]  INTEGER(0..59) DEFAULT 0,
  second  [3]  INTEGER(0..59) DEFAULT 0,
  msec    [4]  INTEGER(0..999) DEFAULT 0
}

--  TimeInterval shall be non-zero
ValueDuration ::= SEQUENCE {value     REAL,
                            duration  TimeInterval
}

--  the following is the bit string to be used when specifying
--  the functional units for alarm surveillance
AlarmSurveillanceFunctionalUnits ::= BIT STRING {
  as-kernel(0), as-alarm-retrieval(1), as-basic-arc(2), as-enhanced-arc(3),
  as-cur-alm-sum-reporting(4), as-basic-mos(5), as-enhanced-mos(6),
  as-cur-alm-sum-control(7), as-cur-alm-sum-retrieval(8),
  as-basic-log-control(9), as-enhanced-log-control(10), as-alarm-deletion(11),
  as-alarm-event-criteria(12), as-alarm-indication(13), as-alarm-synch(14),
  as-alarm-synch-cancel(15)}

END
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D