

-- Alarm record

"ISO/IEC 10165-2":alarmRecord     MANAGED OBJECT CLASS
LIBCOMMENT
"The alarmRecord managed object class is used to define the information stored 
in the log as a result of receiving alarm notifications or alarm reports. The 
semantics of the managed object class, namely its attributes and behaviour
are derived from the Alarm notification described in 
CCITT Rec. X.733 | ISO/IEC 10164-4.";

 DERIVED FROM   eventLogRecord;
 CHARACTERIZED BY
-- The appropriate object identifier values for the eventType attribute, inherited from eventLogRecord
-- managed object class are communicationAlarm, qualityofServiceAlarm, processingErrorAlarm,
-- equipmentAlarm and environmentalAlarm --
        alarmRecordPackage      PACKAGE
        BEHAVIOUR
        alarmRecordBehaviour    BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from alarm
notifications or event reports";;
        ATTRIBUTES
        probableCause   GET,
        perceivedSeverity       GET;;;

 CONDITIONAL PACKAGES
        specificProblemsPackage PACKAGE
        ATTRIBUTES
        specificProblems        GET;
        REGISTERED AS   {smi2Package 1}; 
                PRESENT IF "the Specific problems parameter is present in the alarm
notification or event report corresponding to the instance of alarm record",

        backedUpStatusPackage   PACKAGE
        ATTRIBUTES
        backedUpStatus  GET;
        REGISTERED AS   {smi2Package 2}; PRESENT IF "the backedUpStatus attribute has a value TRUE and the
Backed up status parameter is present in the alarm notification or event report corresponding to the instance
of alarm record",

        backUpObjectPackage     PACKAGE
        ATTRIBUTES
        backUpObject    GET;
        REGISTERED AS   {smi2Package 3}; PRESENT IF "Backup object parameter is present in the alarm notification
or event report corresponding to the instance of alarm record",

        trendIndicationPackage  PACKAGE
        ATTRIBUTES
        trendIndication GET;
        REGISTERED AS   {smi2Package 4}; PRESENT IF "the Trend indication parameter is present in the alarm
notification or event report corresponding to the instance of alarm record",

        thresholdInfoPackage    PACKAGE
        ATTRIBUTES
        thresholdInfo   GET;
        REGISTERED AS   {smi2Package 5}; PRESENT IF "the value for probableCause attribute is thresholdCrossed",

        stateChangeDefinitionPackage    PACKAGE
        ATTRIBUTES
        stateChangeDefinition   GET;
        REGISTERED AS   {smi2Package 6}; PRESENT IF "there is a state transition for the states defined in State
Management Function, corresponding to the alarm type specified in the alarm record",

        monitoredAttributesPackage      PACKAGE
        ATTRIBUTES
        monitoredAttributes     GET;
        REGISTERED AS   {smi2Package 7}; PRESENT IF "the monitoredAttributes parameter is present in the alarm
notification or event report corresponding to the instance of alarm record",

        proposedRepairActionsPackage    PACKAGE
        ATTRIBUTES
        proposedRepairActions GET;
        REGISTERED AS   {smi2Package 8}; PRESENT IF "the proposedRepairActions parameter is present in the
alarm notification or event report corresponding to the instance of alarm record";

REGISTERED AS   {smi2MObjectClass 1};

-- 6.2     Attribute value change record

attributeValueChangeRecord      MANAGED OBJECT CLASS
LIBCOMMENT
"The attributeValueChangeRecord managed object class is used to define the 
information stored in the log as a result of receiving attribute value change 
notifications or attribute value change event reports. The semantics of the 
managed object class, namely its attributes and behaviour are derived from 
the Attribute Value Change notification described in 
CCITT Rec. X.730 | ISO/IEC 10164-1.";

 DERIVED FROM    eventLogRecord;
 CHARACTERIZED BY
-- The appropriate object identifier values for the eventType attribute, inherited from eventLogRecord
-- managed object class, is attributeValueChange
attributeValueChangeRecordPackage       PACKAGE
        BEHAVIOUR
        attributeValueChangeRecordBehaviour     BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from attribute value
change notifications or event reports";;
        ATTRIBUTES
        attributeValueChangeDefinition  GET;;;

CONDITIONAL PACKAGES
        sourceIndicatorPackage          PRESENT IF "the sourceIndicator parameter is present in the
attributeValueChange notification or event report corresponding to the instance of attribute value change
record",

        attributeIdentifierListPackage  PRESENT IF "the attributeIdentifierList parameter is present in the
attributeValueChange notification or event report corresponding to the instance of attribute value change
record";

REGISTERED AS   {smi2MObjectClass 2};

-- 6.3     Discriminator

discriminator   MANAGED OBJECT CLASS
LIBCOMMENT
"The discriminator managed object class is used to define the criteria for 
controlling management services. The semantics of the managed object class, 
namely its attributes and behaviour are described in 
CCITT Rec. X.734 | ISO/IEC 10164-5.";

 DERIVED FROM    top;
 CHARACTERIZED BY
discriminatorPackage    PACKAGE
        BEHAVIOUR
        discriminatorBehaviour  BEHAVIOUR
        DEFINED AS "This managed object is used to represent the criteria for controlling management services.";;
        ATTRIBUTES
        discriminatorId GET,
        discriminatorConstruct
        REPLACE-WITH-DEFAULT
        DEFAULT VALUE Attribute-ASN1Module.defaultDiscriminatorConstruct        GET-REPLACE,
        administrativeState     GET-REPLACE,
        operationalState        GET;
        NOTIFICATIONS
        stateChange,
        attributeValueChange,
        objectCreation,
        objectDeletion;;;
--  the above events are defined in CCITT Rec. X.731 | ISO/IEC10164- 2, CCITT Rec. X.730 | ISO/IEC10164-1
CONDITIONAL PACKAGES
        availabilityStatusPackage       PRESENT IF "any of the scheduling packages, ( duration, weekly scheduling,
external) are present",

        duration                PRESENT IF "the discriminator function is scheduled to start at a specified time and stop at
either a specified time or function continuously ",

        dailyScheduling         PRESENT IF "both the weekly scheduling package and external scheduler packages
are not present in an instance and daily scheduling is supported by that instance",

        weeklyScheduling        PRESENT IF "both the daily scheduling package and external scheduler packages are not
present in an instance and weekly scheduling is supported by that instance",

        externalScheduler       PRESENT IF "both the daily scheduling package and weekly scheduling packages are not
present in an instance and external scheduling is supported by that instance";
-- see CCITT Rec. X.734 | ISO/IEC 10164-5 for the description of this managed object class.

REGISTERED AS   {smi2MObjectClass 3};

-- 6.4     Event forwarding discriminator

eventForwardingDiscriminator    MANAGED OBJECT CLASS
LIBCOMMENT
"The eventForwardingDiscriminator managed object class is used to define the 
conditions that shall be satisfied by potential event reports before the event 
report is forwarded to a particular destination.This managed object class is a
subclass of discriminator managed object class. The semantics of the managed 
object class, namely its attributes, management operations and behaviour, are 
described in CCITT Rec. X. 734 | ISO/IEC 10164-5.";

DERIVED FROM    discriminator;
CHARACTERIZED BY
-- The value for the administrative state if not specified at initiation defaults to the value unlocked.
efdPackage      PACKAGE
        BEHAVIOUR
        eventForwardingDiscriminatorBehaviour   BEHAVIOUR
        DEFINED AS "This managed object is used to represent the criteria that shall be satisfied by potential event
reports before the event report is forwarded to a particular destination.";;
        ATTRIBUTES
        destination     GET-REPLACE;;;
-- discriminatorConstruct attribute is defined using the attributes of a potential event report object
-- described in CCITT Rec. X.734 | ISO/IEC 10164-5.

CONDITIONAL PACKAGES
        backUpDestinationListPackage    PACKAGE
        ATTRIBUTES
        activeDestination       GET,
        backUpDestinationList   GET-REPLACE;
        REGISTERED AS   {smi2Package 9} ; PRESENT IF "the event forwarding discriminator is required to provide a
backup for the destination",

        modePackage     PACKAGE
        ATTRIBUTES
        confirmedMode   GET;

        REGISTERED AS   {smi2Package 10}; PRESENT IF "the event forwarding discriminator permits mode for
reporting events to be specified by the managing system";

REGISTERED AS   {smi2MObjectClass 4};

-- 6.5     Event log record

eventLogRecord  MANAGED OBJECT CLASS
LIBCOMMENT
"The eventLogRecord managed object class is used to define the information 
stored in the log as a result of receiving notifications or event reports. This 
is a superclass from which records for specific event types are derived.";

 DERIVED FROM    logRecord;
 CHARACTERIZED BY
eventLogRecordPackage   PACKAGE
        BEHAVIOUR
        eventLogRecordBehaviour BEHAVIOUR
        DEFINED AS "This managed object represents the information stored in the log as a result of receiving
notifications or incoming event reports.";;
        ATTRIBUTES
        managedObjectClass      GET,
        managedObjectInstance   GET,
        eventType               GET;;;

CONDITIONAL PACKAGES
        eventTimePackage        PACKAGE
        ATTRIBUTES
        eventTime       GET;
        REGISTERED AS   {smi2Package 11}; 
                PRESENT IF "the event time parameter was present in the received
event report",

        notificationIdentifierPackage   
                PRESENT IF "the notification Identifier parameter is present in the
notification or event report corresponding to the instance of an event record or an instance of its subclasses",

        correlatedNotificationsPackage  
                PRESENT IF "the correlatedNotifications parameter is present in the
notification or event report corresponding to the instance of an event record or an instance of its subclasses",

        additionalTextPackage           
                PRESENT IF "the Additional text parameter is present in the notification or
report corresponding to the instance of event record or an instance of its subclasses",

        additionalInformationPackage    
                PRESENT IF "the Additional information parameter is present in the
notification or report corresponding to the instance of event record or an instance of its subclasses";

REGISTERED AS   {smi2MObjectClass 5};

-- 6.6     Log

log     MANAGED OBJECT CLASS
LIBCOMMENT
"The log managed object class is used to define the criteria for controlling the
logging of the information in an open system. The semantics of the managed 
object class, namely its attributes and behaviour are described in
CCITT Rec. X.735 | ISO/IEC 10164-6.";

 DERIVED FROM    top;
 CHARACTERIZED BY
-- see CCITT Rec. X.735 | ISO/IEC 10164-6 for the description of this managed object class.
logPackage      PACKAGE
        BEHAVIOUR
        logBehaviour    BEHAVIOUR
        DEFINED AS "This managed object is used to store incoming event reports and local system notifications.
Additional details are defined in CCITT Rec. X. 735 | ISO/IEC 10164-6. ";;
        ATTRIBUTES
        logId   GET,
        discriminatorConstruct  GET-REPLACE ,
        administrativeState     GET-REPLACE,
        operationalState        GET,
        availabilityStatus PERMITTED VALUES Attribute-ASN1Module.LogAvailability
                        REQUIRED VALUES Attribute-ASN1Module.UnscheduledLogAvailability GET,
        logFullAction   GET-REPLACE;
        NOTIFICATIONS
        objectCreation,
        objectDeletion,
        attributeValueChange,
        stateChange,
        processingErrorAlarm;;;

CONDITIONAL PACKAGES
        finiteLogSizePackage    PACKAGE
        ATTRIBUTES
        maxLogSize      GET-REPLACE,
        currentLogSize  GET,
        numberOfRecords GET;
        REGISTERED AS   {smi2Package 12} ;      PRESENT IF "an instance supports it",

        logAlarmPackage PACKAGE
        ATTRIBUTES
        capacityAlarmThreshold  GET-REPLACE ADD-REMOVE;
        REGISTERED AS   {smi2Package 13} ;      PRESENT IF "a log is of finite size and halts logging when the
availability status has the log full value.",

        availabilityStatusPackage                               PRESENT IF "any of the scheduling packages, (duration, weekly
scheduling, external) are present. The presence of this package makes available the off-duty value of the
available status attribute to the object.",

        duration                                        PRESENT IF "the logging function is scheduled to start at a specified time
and stop at either a specified time or function continuously.",

        dailyScheduling                                 PRESENT IF "both the weekly scheduling package and external
scheduler packages are not present in an instance and daily scheduling is supported by that instance.",

        weeklyScheduling                                PRESENT IF "both the daily scheduling package and external scheduler
packages are not present in an instance and weekly scheduling is supported by that instance.",

        externalScheduler                               PRESENT IF "both the daily scheduling package and weekly scheduling
packages are not present in an instance and external scheduling is supported by that instance.";

REGISTERED AS    {smi2MObjectClass 6};

-- 6.7     Log record

logRecord       MANAGED OBJECT CLASS
LIBCOMMENT
"The logRecord managed object class is used to define the records contained in 
a log managed object. The semantics of the managed object class, namely its 
attributes and behaviour are described in CCITT Rec. X.735 | ISO/IEC 10164-6.";

 DERIVED FROM    top;
 CHARACTERIZED BY
logRecordPackage        PACKAGE
        BEHAVIOUR
        logRecordBehaviour      BEHAVIOUR
        DEFINED AS "This managed object represents the information stored in the logs";;
        ATTRIBUTES
        logRecordId     GET,
        loggingTime     GET;;;

REGISTERED AS    {smi2MObjectClass 7};

-- 6.8     Object creation record

objectCreationRecord    MANAGED OBJECT CLASS
LIBCOMMENT
"The objectCreationRecord managed object class is used to define the information
stored in the log as a result of receiving object creation notifications or 
Object Creation event reports. The semantics of the managed object class,
namely its attributes and behaviour are derived from the Object Creation 
notification described in CCITT Rec. X.730 | ISO/IEC 10164-1.";

 DERIVED FROM    eventLogRecord;
 CHARACTERIZED BY
-- The appropriate object identifier value for the eventType attribute, inherited from eventLogRecord
-- managed object class, is objectCreation
 objectCreationRecordPackage    PACKAGE
        BEHAVIOUR
        objectCreationRecordBehaviour   BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from object creation
notifications or event reports";;;;

CONDITIONAL PACKAGES
        sourceIndicatorPackage  PRESENT IF "the sourceIndicator parameter is present in the object creation
notification or event report corresponding to the instance of object creation record",

        attributeListPackage    PRESENT IF "the attributeList parameter is present in the object creation notification
or event report corresponding to the instance of object creation record";

REGISTERED AS   {smi2MObjectClass 8};

-- 6.9     Object deletion record

objectDeletionRecord    MANAGED OBJECT CLASS
LIBCOMMENT
"The objectDeletionRecord managed object class is used to define the information
stored in the log as a result of receiving object deletion notifications or 
Object deletion event reports. The semantics of the managed object class, namely 
its attributes and behaviour are derived from the Object Deletion notification
described in CCITT Rec. X.730 | ISO/IEC 10164-1.";

 DERIVED FROM    eventLogRecord;
 CHARACTERIZED BY
-- The appropriate object identifier value for the eventType attribute, inherited from eventLogRecord
-- managed object class, is objectDeletion
 objectDeletionRecordPackage    PACKAGE
        BEHAVIOUR
        objectDeletionRecordBehaviour   BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from object deletion
notifications or event reports";;;;

CONDITIONAL PACKAGES
        sourceIndicatorPackage  PRESENT IF "the sourceIndicator parameter is present in the object deletion
notification or event report corresponding to the instance of object deletion record",

        attributeListPackage    PRESENT IF "the attributeList parameter is present in the object deletion notification
or event report corresponding to the instance of object deletion record";

REGISTERED AS   {smi2MObjectClass 9};

-- 6.10    Relationship change record

relationshipChangeRecord         MANAGED OBJECT CLASS
LIBCOMMENT
"The relationshipChangeRecord managed object class is used to define the 
information stored in the log as a result of receiving relationship change 
notifications or relationship change event reports. The semantics of the managed
object class, namely its attributes and behaviour are derived from the 
Relationship Change notification described in CCITT Rec.X.732 | ISO/IEC 10164-3.";

DERIVED FROM    eventLogRecord;
-- The appropriate object identifier value for the eventType attribute, inherited from eventLogRecord
-- managed object class, is relationshipChange
CHARACTERIZED BY
relationshipChangeRecordPackage PACKAGE
        BEHAVIOUR
        relationshipChangeRecordBehaviour       BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from
        relationship change notifications or event reports";;
        ATTRIBUTES
        relationshipChangeDefinition    GET;;;

CONDITIONAL PACKAGES
        sourceIndicatorPackage          PRESENT IF "the Source indicator parameter is present in the
relationshipChange notification or event report corresponding to the instance of relationship change record",

        attributeIdentifierListPackage  PRESENT IF "the Attribute identifier list parameter is present in the
relationshipChange notification or event report corresponding to the instance of relationship change record";

REGISTERED AS   {smi2MObjectClass 10};

-- 6.11    Security alarm report record

securityAlarmReportRecord       MANAGED OBJECT CLASS
LIBCOMMENT
"The securityAlarmReportRecord managed object class is used to define the 
information stored in the log as a result of receiving security alarm 
notifications or security alarm event reports. The semantics of the managed 
object class, namely its attributes and behaviour are derived from the Security
Alarm notification described in CCITT Rec. X.736 | ISO/IEC 10164-7.";
 DERIVED FROM    eventLogRecord;
 CHARACTERIZED BY
-- The appropriate object identifier values for the eventType attribute, inherited from eventLogRecord
-- managed object class, are integrityViolation, operationalViolation, physicalViolation,
-- securityServiceOrMechanismViolation and timeDomainViolation --
securityAlarmRecordPackage      PACKAGE
        BEHAVIOUR
        securityAlarmReportRecordBehaviour      BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from security alarm
notifications or event reports";;
        ATTRIBUTES
        securityAlarmCause      GET,
        securityAlarmSeverity   GET,
        securityAlarmDetector   GET,
        serviceUser             GET,
        serviceProvider         GET;;;

REGISTERED AS   {smi2MObjectClass 11};

-- 6.12    State change record

stateChangeRecord       MANAGED OBJECT CLASS
LIBCOMMENT
"The stateChangeRecord managed object class is used to define the information 
stored in the log as a result of receiving state change notifications or state 
change event reports. The semantics of the managed object class, namely its 
attributes and behaviour are derived from the State Change notification 
described in CCITT Rec. X.731 | ISO/IEC 10164-2.";

 DERIVED FROM    eventLogRecord;
-- The appropriate object identifier value for the eventType attribute, inherited from eventLogRecord
-- managed object class, is stateChange
CHARACTERIZED BY
stateChangeRecordPackage        PACKAGE
        BEHAVIOUR
        stateChangeRecordBehaviour      BEHAVIOUR
        DEFINED AS "This managed object is used to represent logged information that resulted from state change
notifications or event reports";;
        ATTRIBUTES
        stateChangeDefinition   GET;;;

CONDITIONAL PACKAGES
        sourceIndicatorPackage          PRESENT IF "the Source indicator parameter is present in the stateChange
notification or event report corresponding to the instance of state change record",

        attributeIdentifierListPackage  PRESENT IF "the Attribute identifierList parameter is present in the
stateChange notification or event report corresponding to the instance of state change record";

REGISTERED AS   {smi2MObjectClass 12};

-- 6.13    System

system  MANAGED OBJECT CLASS
LIBCOMMENT
"The system managed object class is used to represent a set of hardware and 
software that forms an autonomous whole capable of performing information 
processing and/or information transfer. The specification of the sequence of 
name bindings to be used in constructing the distinguished name for a system
managed object is outside the scope of this Recommendation | International 
Standard . 
Examples of names for systems are specified in CCITT Rec. X.720 | ISO/IEC 10165-1.

NOTE- This definition does not correspond to real open system but corresponds to
real systems in CCITT Rec. X.200 | ISO 7498.

An instance of this managed object class may be used as the superior in naming 
managed objects representing either information processing and or information 
transfer resources contained within this instance.";

 DERIVED FROM   top;
 CHARACTERIZED BY
 systemPackage  PACKAGE
        ATTRIBUTES
        systemId        GET,
        systemTitle     GET,
        operationalState        GET,
        usageState      GET;;;

CONDITIONAL PACKAGES
        administrativeStatePackage      PACKAGE
        ATTRIBUTES
        administrativeState     GET-REPLACE ;
        REGISTERED AS   {smi2Package 14};       PRESENT IF "an instance supports it.",

        supportedFeaturesPackage        PACKAGE
        ATTRIBUTES
        supportedFeatures       GET-REPLACE ADD-REMOVE;
        REGISTERED AS   {smi2Package 15}; PRESENT IF "an instance supports it.";

REGISTERED AS   {smi2MObjectClass 13};

-- 6.14    Top

top     MANAGED OBJECT CLASS
LIBCOMMENT
"The top managed object class, is that class of which every other managed object
class is a subclass. The semantics of the attributes objectClass, packages,
nameBindings, and allomorphs are defined in CCITT Rec. X.720 | ISO/IEC 10165-1.";

CHARACTERIZED BY
topPackage      PACKAGE
        BEHAVIOUR
        topBehaviour;
        ATTRIBUTES
        objectClass GET,
        nameBinding     GET ;;;

CONDITIONAL PACKAGES
        packagesPackage PACKAGE
        ATTRIBUTES      packages        GET;
        REGISTERED AS   {smi2Package 16};
        PRESENT IF "any registered package, other than this package has been instantiated",

        allomorphicPackage      PACKAGE
        ATTRIBUTES
        allomorphs      GET;
        REGISTERED AS   {smi2Package 17};
        PRESENT IF " if an object supports allomorphism" ;

REGISTERED AS   {smi2MObjectClass 14};

topBehaviour    BEHAVIOUR
        DEFINED AS "This is the top level of managed object class hierarchy and every other managed object class is
a specialization of either this generic class (top) or a specialization of subclass of top. The parameter
miscellaneousError is to be used when a processing failure has occurred and the error condition encountered
does not match any of object's defined specific error types.";

-- 7       Name binding for managed object classes
-- This clause specifies name bindings for the managed object classes. 
-- Additional name bindings may be defined for these managed object classes and
-- their subclasses.

-- 7.1     Discriminator

discriminator-system    NAME BINDING
        SUBORDINATE OBJECT CLASS        discriminator   AND SUBCLASSES;
        NAMED BY
        SUPERIOR OBJECT CLASS system AND SUBCLASSES ;
        WITH ATTRIBUTE  discriminatorId;
        CREATE
        WITH-REFERENCE-OBJECT ,
        WITH-AUTOMATIC-INSTANCE-NAMING;
        DELETE
        ONLY-IF-NO-CONTAINED-OBJECTS;

REGISTERED AS   {smi2NameBinding 1};

-- 7.2     Log

log-system      NAME BINDING
        SUBORDINATE OBJECT CLASS        log     AND SUBCLASSES ;
        NAMED BY
        SUPERIOR OBJECT CLASS system AND SUBCLASSES ;
        WITH ATTRIBUTE  logId;
        CREATE
        WITH-REFERENCE-OBJECT ,
        WITH-AUTOMATIC-INSTANCE-NAMING;
        DELETE
        ONLY-IF-NO-CONTAINED-OBJECTS;

REGISTERED AS   {smi2NameBinding 2};

-- 7.3     Log record

logRecord-log   NAME BINDING
        SUBORDINATE OBJECT CLASS        logRecord AND SUBCLASSES;
        NAMED BY
        SUPERIOR OBJECT CLASS   log AND SUBCLASSES;
        WITH ATTRIBUTE
        logRecordId;
        DELETE
        ONLY-IF-NO-CONTAINED-OBJECTS;

REGISTERED AS   {smi2NameBinding 3};

-- 8       Definition of packages
-- This Recommendation | International Standard defines a number of packages 
-- which are referenced by the System Management Functions of 
-- CCITT Recs.X.730 - 736 | ISO/IEC 10164 parts 1 to 7.

-- 8.1     Additional information

additionalInformationPackage    PACKAGE
LIBCOMMENT
"The additionalInformationPackage package contains the additionalInformation 
attribute described in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        ATTRIBUTES
        additionalInformation   GET;

REGISTERED AS   {smi2Package 18};

-- 8.2     Additional text

additionalTextPackage   PACKAGE
LIBCOMMENT
"The additionalTextPackage package contains the additionalText attribute 
described in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        ATTRIBUTES
        additionalText  GET;

REGISTERED AS   {smi2Package 19};

-- 8.3     Attribute identifier list

attributeIdentifierListPackage  PACKAGE
LIBCOMMENT
"The attributeIdentifierListPackage package contains the attributeIdentifierList
attribute described in CCITT Rec.  X.730 | ISO/IEC 10164-1, 
CCITT Rec. X.731 | ISO/IEC 10164-2, and CCITT Rec. X.732 | ISO/IEC 10164-3.";

        ATTRIBUTES
        attributeIdentifierList GET;

REGISTERED AS   {smi2Package 20};

-- 8.4     Attribute list

attributeListPackage    PACKAGE
LIBCOMMENT
"The attributeListPackage package contains the attributeList attribute described
in CCITT Rec. X.730 | ISO/IEC 10164-1.";

        ATTRIBUTES
        attributeList   GET;

REGISTERED AS   {smi2Package 21};

-- 8.5     Availability status

availabilityStatusPackage       PACKAGE
LIBCOMMENT
"The availabilityStatusPackage package contains the availabilityStatus attribute
described in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        BEHAVIOUR
        availabilityStatusBehaviour     BEHAVIOUR
        DEFINED AS " This package is described in CCITT Rec. X.734,X.735 | ISO/IEC 10164-5, 10164-6. It is used
to indicate the availability of the resource according to a predetermined time schedule." ;;
        ATTRIBUTES
        availabilityStatus REQUIRED VALUES Attribute-ASN1Module.SchedulingAvailability  GET;

REGISTERED AS   {smi2Package 22};

-- 8.6     Correlated notifications

correlatedNotificationsPackage  PACKAGE
LIBCOMMENT
"The correlatedNotificationsPackage package contains the correlatedNotifications
attribute described in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        ATTRIBUTES
        correlatedNotifications GET;

REGISTERED AS   {smi2Package 23};

-- 8.7     Notification identifier

notificationIdentifierPackage   PACKAGE
LIBCOMMENT
"The notificationIdentifierPackage package contains the notificationIdentifier 
attribute described in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        ATTRIBUTES
        notificationIdentifier  GET;

REGISTERED AS   {smi2Package 24};

-- 8.8     Daily scheduling

dailyScheduling PACKAGE
LIBCOMMENT
"The semantics of dailyScheduling package are described in 
CCITT Rec. X.734 | ISO/IEC 10164-5 and CCITT Rec. X.735 | ISO/IEC 10164-6.";

        ATTRIBUTES
        intervalsOfDay  REPLACE-WITH-DEFAULT
                        DEFAULT VALUE Attribute-ASN1Module.defaultIntervalsOfDay
                        GET-REPLACE ADD-REMOVE;

REGISTERED AS   {smi2Package 25};

-- 8.9     Duration


duration        PACKAGE
LIBCOMMENT
"The semantics of duration package are described in 
CCITT Rec.X.734 | ISO/IEC 10164-5 and CCITT Rec.X.735 | ISO/IEC 10164-6.";

        ATTRIBUTES
        startTime       GET-REPLACE,
        stopTime        REPLACE-WITH-DEFAULT
                        DEFAULT VALUE Attribute-ASN1Module.defaultStopTime
                        GET-REPLACE;

REGISTERED AS   {smi2Package 26};

-- 8.10    External scheduler

externalScheduler               PACKAGE
LIBCOMMENT
"The semantics of externalScheduler package are described in 
CCITT Rec. X.734 | ISO/IEC 10164-5 and CCITT Rec. X.735 | ISO/IEC 10164-6.";
        ATTRIBUTES
        schedulerName   GET;
REGISTERED AS   {smi2Package 27};

-- 8.11    Source indicator

sourceIndicatorPackage  PACKAGE
LIBCOMMENT
"The sourceIndicatorPackage package contains the sourceIndicator attribute 
described in CCITT Rec. X.730 | ISO/IEC 10164-1, 
CCITT Rec. X.731 | ISO/IEC 10164-2, and CCITT Rec. X.732 | ISO/IEC 10164-3.";

        ATTRIBUTES
        sourceIndicator GET;

REGISTERED AS   {smi2Package 28};

-- 8.12    Weekly scheduling

weeklyScheduling        PACKAGE
LIBCOMMENT
"The semantics of weeklyScheduling package are described in 
CCITT Rec.X.734 | ISO/IEC 10164-5 and CCITT Rec.X.735 | ISO/IEC 10164-6.";

        ATTRIBUTES
        weekMask        REPLACE-WITH-DEFAULT
                        DEFAULT VALUE Attribute-ASN1Module.defaultWeekMask
                        GET-REPLACE ADD-REMOVE;

REGISTERED AS   {smi2Package 29};

-- 9       Definition of generic attribute types
-- This Recommendation | International Standard defines a number of generic 
-- attribute types. These are intended to be used in the definition of specific 
-- attributes appearing in the definitions of Managed Object Classes.
-- Each attribute type definition comprises
--  -       the structure of the attribute value;
--  -       the inherent properties of the attribute in terms of its behaviour;
--  -       the permitted matching operations that may be performed on an 
--          attribute having this type;
--  -       the ways in which specific attributes having this type relate to 
--          other attributes.
--
-- An attribute type definition does not include an object identifier. This 
-- shall form part of the definition of each of the specific attributes of that
-- type. Definitions of specific attributes may also refine the definition given
-- in the type, for example
--  -       to extend the behaviour definition to relate the behaviour to the 
--          operation of the resource represented by the managed object;
--  -       parameters be associated with the attribute.
-- 
-- The template definitions are specified below for each attribute's type. The 
-- ASN.1 supporting productions are defined in 14.2.

-- 9.1     Counter

counter ATTRIBUTE
LIBCOMMENT
"Counters are a management abstraction of an underlying counting process. Two 
types of counters are modelled to meet different needs. The non-settable 
(or simple) counter is defined to operate autonomously, i.e. not subject to 
change by Management operation, in order to enable different managing stations 
to access its information without interference.

The settable counter, in contrast, is defined to allow setting or resetting by 
Management operation, and therefore is more suited to use by a single managing
station. Both types are defined as attributes.  A counter is regarded as 
associated with some internal event, which may be, but is not in general, a 
defined event represented in management information. The current value is 
incremented by 1 when this event occurs. It can take any values in its range. 

When a counter reaches its maximum value, it wraps around and counts upwards 
from 0; overflow information is not in general retained. An attribute value 
change notification may be defined for counters with wrap behaviour.

NOTE - The rule that the counter value can increase only in steps of 1 is a 
descriptive convention that simplifies the description of counter-threshold. 
It does not imply that it will always be possible to observe each value in the 
counter's range, since the events counted may occur in rapid succession.

Not-settable counter-definition

attribute value

-       single value.

inherent properties

-       current value is a non-negative integer;

-       it has a maximum value (see specification properties);

-       the counting direction is up, with increment 1;

-       the current value wraps around when it reaches its maximum;

-       the initial value is 0.

permitted operations

-       Get only.

implicit relations

-       directly related to a single counter-threshold where applied;

-       as an implementation option, may trigger a defined event when it wraps.

specification properties

-       the internal event that is counted;

-       maximum value;

-       ""estimated"" wrap around period, to indicate necessary reading rate.

Settable counter definition

attribute value

-       single value.

inherent properties

-       current value is a non-negative integer;

-       it has a maximum value (see specification properties);

-       the counting direction is up, with increment 1;

-       the current value wraps around when it reaches its maximum;

-       the initial value is 0.

permitted operations

-       Get;

-       Set to arbitrary value (within range);

-       Set to the default specified in the managed object definition, or to 
        zero otherwise.


implicit relations

-       directly related to a single counter-threshold, where applied;

-       as an implementation option, may trigger a defined event when it wraps 
        or its value is otherwise changed except by the normal counting process.

specification properties

-       the internal event that is counted;

-       maximum value;

-       ""estimated"" wrap around period, to indicate necessary reading rate.";

                WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.Count;
                MATCHES FOR EQUALITY,ORDERING ;;

-- 9.2     Gauge

gauge   ATTRIBUTE
LIBCOMMENT
"The gauge is the management abstraction of the value of a dynamic variable, 
such as the number of connections currently operated by a protocol machine or 
the rate of change of a traffic counter. There is no restriction on what the 
dynamic variable may be, within the constraints set out below.

The value of the gauge is subject to change in either direction. The value of 
the increment or decrement is unconstrained, except that changes that would 
take the gauge value beyond its maximum or minimum leave the gauge value at its
maximum or minimum respectively.

In order to support use by multiple managing stations, gauges are defined to be 
read-only.

attribute value

-       single value.

inherent properties

-       current value is a non-negative integer or real (see specification 
        properties);

-       it has a maximum and a minimum value (see specification properties);

-       it may increase or decrease by arbitrary amounts;

-       it does not wrap around.

permitted actions

-       Get only.

implicit relations

-       directly related to a tide-mark and or gauge-threshold, where applied;

-       only one minimum and one maximum tide-mark may be applied;

-       only one (possibly multi-level) threshold may be applied;

-       can be used to measure other management information.

specification properties

-       the dynamic variable measured, with its type: integer or real;

-       maximum and minimum value.";


                WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ObservedValue;
                MATCHES FOR EQUALITY, ORDERING ;;

-- 9.3     Threshold

-- A threshold is the general mechanism for generating a defined notification 
-- from changes in numeric attributes values.  Two types of thresholds are 
-- defined, for counters and for gauges, because the required behaviour is 
-- significantly different in the two cases. Both allow attribute values that 
-- are of integer data types. Other types of threshold may be defined in the 
-- future.

-- 9.3.1   Counter-threshold

counter-Threshold        ATTRIBUTE
LIBCOMMENT
"The counter-Threshold is the general mechanism for generating a defined 
notification from changes in any value of attribute type counter. 

The Counter-Threshold is related to a defined notification. It has the basic 
property that the defined notification is triggered when the value of the count
becomes equal to the comparison level of the threshold. The definition also
allows for more complex styles of operation when needed: the comparison 
attribute is in general a set of levels, for example to represent different 
degrees of severity of a fault condition, and the notification is triggered 
whenever the count value reaches any of the levels.

In addition, an offset mechanism is also available to allow particular counting
intervals to be detected, as follows. If the offset value is not zero, whenever 
the threshold is triggered by the counter value reaching a comparison level, 
that comparison level is incremented by the offset value. This is regarded as 
taking place instantaneously, i.e. before the count is incremented. Thus, for 
each level, the threshold triggers a notification every time the count increases
by an interval equal to the offset value. When the comparison value exceeds the
modulus of the counter, it wraps around.

For a counter-threshold, the time at which the threshold offset was last applied,
or the time at which the count was last initialized is the arm-time.

The Counter-Threshold is modelled as a set-valued attribute.

value type

-       comparison level, integer;

-       offset value, integer;

-       notifications on/off switch, boolean.

inherent properties

-       the comparison levels are non-negative integers;

-       the offset values are non-negative integers;

-       the notifications switch is on or off.

permitted operations

-       Get, Set, Add, Remove.

implicit relations

-       directly related to a single count;

-       directly related to a defined notification.

specification properties

-       count to which it applies;

-       the defined notification that may be triggered.

Any relationship between a threshold attribute and any underlying mechanism is 
specified as part of the behaviour of the managed object class containing the 
threshold.";

        WITH ATTRIBUTE SYNTAX
        Attribute-ASN1Module.CounterThreshold;
         MATCHES FOR EQUALITY ;;

-- 9.3.2   Gauge-threshold

gauge-Threshold  ATTRIBUTE
LIBCOMMENT
"The gauge-Threshold is the general mechanism for generating one or more defined
notifications from changes in any value of attribute type gauge. A hysteresis 
mechanism is provided to avoid the repeated triggering of event notifications 
when the gauge makes small oscillations around a threshold value. This 
capability is provided by specifying threshold values in pairs; one being a high
threshold value and the other being a low threshold value. The difference between
threshold values is the hysteresis interval.

The Gauge-Threshold is a set-valued attribute used to define threshold levels 
associated with notifications. As a set valued attribute, it may have zero or
more members. Each member consists of a sequence of two submembers, notifyLow
and notifyHigh. Each of these submembers in turn has a structure and consists of
a sequence of a gauge value and its associated on/off switch.

notifyHigh: This structured submember defines the value that the gauge must 
reach or exceed in order to optionally generate notification, together with 
a switch value that controls the generation of the notification.

notifyLow: This structured submember defines the value that the gauge must fall
to or below in order to optionally generate notification, together with a switch
value that controls the generation of the notification.

Gauge-Thresholds have the constraint that notifyHigh has a gauge value that is 
greater than or equal to that of notifyLow.

Gauge-Thresholds have the following constraints
-       notify-high's gauge value and notify-low's threshold value are of the 
        same type as the gauge;

-       notify-high's threshold value is greater or equal to notify-low's 
        threshold value;

-       notify-high's on/off switch and notify-low's on/off switch are of 
        type boolean.

Gauge-Thresholds have the following behaviour

-       initially, if notify-high's on/off switch is true and the gauge value 
        becomes equal to or greater than notify-high's gauge value, in a 
        positive going direction, then the defined event notification is 
        triggered; subsequent crossings of notify-high's gauge value shall not 
        cause further generation of event reports unless the gauge value becomes
        equal to or less than notify-low's threshold value.

-       initially, if notify-low's on/off switch is true and the gauge value 
        becomes equal to or less than notify-low's gauge value, in a negative 
        going direction, then the defined event notification is triggered;
        subsequent crossings of notify-low's gauge value shall not cause further
        generation of event reports unless the gauge value becomes equal to or 
        greater than notify-high's gauge value. 
        
For either case, the time at which the notification is again enabled is defined
as the arm-time.

Any relationship between a threshold attribute and any underlying mechanism is 
specified as part of the behaviour of the managed object class containing the
threshold.";

         WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.GaugeThreshold;
         MATCHES FOR EQUALITY ;;

-- 9.4     Tide-mark

tideMark         ATTRIBUTE
LIBCOMMENT
"The tide-mark is a mechanism that records the maximum or minimum value reached
by a gauge during a measurement period. A tide-mark is essentially read-only, 
except that it may be reset to a desired value which is the current value of the
associated gauge. Each individual tide-mark is specified to be either a maximum
tide-mark or a minimum tide-mark, and therefore moves (other than when it is 
reset) only up or down respectively. Thus, a maximum tide-mark changes 
(increases) only when its gauge increases beyond the current tide-mark value, 
and a minimum tide-mark changes (decreases) only when its gauge moves below the
current tide-mark value.

A tide-mark is defined as a set-valued attribute with three components. Two value
components are defined, the current value and the value immediately prior to the
last reset, so as to support different measurement requirements. The third 
component is the last reset time.

attribute value

-       current value of tide-mark;

-       former value of tide-mark, i.e. value immediately before the last reset;

-       last reset time.

inherent properties

-       it is associated with a gauge;

-       it has a direction (maximum or minimum);

-       the current and former values are integer or real depending upon the 
        associated gauge.

permitted operations

-       Get returns the entire attribute value, viz. the current value, the 
        former value and the last reset time;


-       Set to default sets the former value to the current value,the current 
        value to the value of the associated gauge,and the last reset time to
        the current time.
        
implicit relations

-       directly related to a gauge;

-       may be directly related to a defined event that is triggered when the 
        current value changes.

specification properties

-       gauge to which it applies;

-       direction (maximum or minimum).";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.TideMarkInfo;
        MATCHES FOR EQUALITY ;;

-- 10      Definition of specific attribute types

-- This Recommendation | International Standard defines a number of attributes 
-- which are referenced by the System Management Functions of 
-- CCITT Recs. X.730 - 736 | ISO/IEC 10164 Parts 1 to 7, or which are of 
-- widespread applicability in Managed Object definitions. Unlike the attribute
-- types defined in clause 9, the definitions here are directly useable in the
-- definitions of Managed Objects without further elaboration. In particular
-- they include an object identifier by which the attribute is identified. It
-- follows that any of these attributes can only appear once in a Managed
-- Object. Uses of these attributes in Managed Objects may also refine the 
-- definition, for example
-- 
--  -       to extend the behaviour definition to relate the behaviour to the 
--          operation of the resource represented by the Managed Object;
--  -       to restrict the values which the attribute may take to a subset of 
--          those defined by the attribute type;
--  -       to require support for some values of the type;
--  -       to define relations (such as mutual constraints on permitted values)
--          with other attributes.
--
-- The template definition along with the allocated object identifier are 
-- specified below for each attributes type. The

-- ASN.1 supporting productions are defined in 13.2.

-- 10.1    Attributes types used for naming

-- The following attributes can be used as naming attributes in a relative 
-- distinguished name.

-- 10.1.1  Discriminator Id

discriminatorId ATTRIBUTE
LIBCOMMENT
"The discriminatorId attribute type is used in naming instances of Discriminator
managed object class.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SimpleNameType;
        MATCHES FOR EQUALITY, SUBSTRINGS, ORDERING;
        BEHAVIOUR
        rDNIdBehaviour;

REGISTERED AS   {smi2AttributeID 1};

rDNIdBehaviour  BEHAVIOUR
        DEFINED AS " If the string choice for the syntax is used matching on the substrings is permitted . If the
number choice for the syntax is used then matching on ordering is permitted.";

-- 10.1.2  Log Id

logId   ATTRIBUTE
LIBCOMMENT
"The logId attribute type is used in naming instances of Log managed object 
class.";

                WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SimpleNameType;
                MATCHES FOR EQUALITY, SUBSTRINGS;
                BEHAVIOUR
                rDNIdBehaviour;

REGISTERED AS   {smi2AttributeID 2};

-- 10.1.3  Log record Id

logRecordId     ATTRIBUTE
LIBCOMMENT
"The logRecordId attribute type is used in naming instances of Log Records 
managed object class.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.LogRecordId;
        MATCHES FOR EQUALITY, ORDERING ;

REGISTERED AS   {smi2AttributeID 3};

-- 10.1.4  System Id
systemId        ATTRIBUTE
LIBCOMMENT
"The systemId attribute type may be used in naming instances of System managed 
object class.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SystemId;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 4};

-- 10.1.5  System title

systemTitle     ATTRIBUTE
LIBCOMMENT
"The systemTitle attribute type may be used in naming instances of System 
managed object class.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SystemTitle;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 5};

-- 10.2    Counter

-- This Recommendation | International Standard defines a number of counter 
-- types which are referenced by the System Management Functions in 
-- CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7.
-- 
-- NOTE - There are no counter types currently defined in the system management 
-- functions and this subclause is a place holder for future additions. 
-- Annex A defines a number of specific counter attributes generally useful to 
-- layer management.

-- 10.3 Counter-threshold

-- This Recommendation | International Standard defines a number of 
-- counter-threshold types which are referenced by the System Management 
-- Functions in CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7.  
-- 
-- NOTE - There are no counter-threshold types currently defined in the system 
-- management functions and this subclause is a place holder for future additions.
-- 
-- Annex A defines a number of specific counter-threshold attributes generally 
-- useful to layer management.

-- 10.4    Gauge

-- This Recommendation | International Standard defines a number of Gauge types 
-- which are referenced by the System Management Functions in 
-- CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7.
-- 
-- NOTE - There are no Gauge types currently defined in the system management 
-- functions and this subclause is a place holder for future additions.

-- 10.5    Gauge-threshold

-- This Recommendation | International Standard defines a number of 
-- Gauge-Threshold types which are referenced by the System Management Functions
-- in CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7.
--
-- NOTE - There are no gauge threshold types currently defined in the system 
-- management functions and this subclause is a place holder for future addition.

-- 10.6    Tide-mark

-- This Recommendation | International Standard defines a number of Tide-Mark 
-- types which are referenced by the System Management Functions of 
-- CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7.
-- 
-- NOTE - There are no tide-mark types currently defined in the system 
-- management functions and this subclause is a place holder for future addition.

-- 10.7    Miscellaneous attribute types

-- 10.7.1  Events related

-- 10.7.1.1        Additional information

additionalInformation   ATTRIBUTE
LIBCOMMENT
"The semantics of the additionalInformation attribute type are specified in the
Additional Information parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AdditionalInformation;
        BEHAVIOUR
        additionalInformationBehaviour  BEHAVIOUR
        DEFINED AS      "This attribute is used to supply additional information in notifications.";;

REGISTERED AS    {smi2AttributeID 6};

-- 10.7.1.2        Additional text

additionalText  ATTRIBUTE
LIBCOMMENT
"The semantics of the additionalText attribute type are specified in the
Additional Text parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AdditionalText;
        MATCHES FOR EQUALITY, SUBSTRINGS;
        BEHAVIOUR
        additionalTextBehaviour BEHAVIOUR
        DEFINED AS      "This attribute is used to specify additional textual information in notifications ";;

REGISTERED AS    {smi2AttributeID 7};

-- 10.7.1.3        Attribute identifier list

attributeIdentifierList ATTRIBUTE
LIBCOMMENT
"The semantics of the attributeIdentifierList attribute type are 
specified in the Attribute Identifier List parameter in 
CCITT Rec. X.730 | ISO/IEC 10164-1.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AttributeIdentifierList;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION ;
        BEHAVIOUR
        attributeIdentifierListBehaviour        BEHAVIOUR
        DEFINED AS      "This attribute contains a list of attribute identifiers.";;

REGISTERED AS    {smi2AttributeID 8};

-- 10.7.1.4        Attribute list

attributeList   ATTRIBUTE
LIBCOMMENT
"The semantics of the attributeList attribute type are specified in the 
Attribute List parameter in CCITT Rec. X.730 | ISO/IEC 10164-1.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AttributeList;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION ;
        BEHAVIOUR
        attributeListBehaviour  BEHAVIOUR
        DEFINED AS      "This attribute contains a list of attribute identifiers and their values.";;

REGISTERED AS    {smi2AttributeID 9};

-- 10.7.1.5        Attribute value change definition

attributeValueChangeDefinition  ATTRIBUTE
LIBCOMMENT
"The semantics of the attributeValueChangeDefinition attribute type are 
defined in the Attribute Value Change definition parameter in 
CCITT Rec. X.730 | ISO/IEC 10164-1.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AttributeValueChangeDefinition;
        BEHAVIOUR
        attributeValueChangeDefinitionBehaviour BEHAVIOUR
        DEFINED AS      "This attribute contains a set of attribute identifiers and their old and new values.";;

REGISTERED AS   {smi2AttributeID 10};

-- 10.7.1.6        Backed-up status

backedUpStatus  ATTRIBUTE
LIBCOMMENT
"The semantics of the backedUpStatus attribute type are specified in the 
Backed-up Status parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.BackedUpStatus;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 11};

-- 10.7.1.7        Correlated notifications

correlatedNotifications ATTRIBUTE
LIBCOMMENT
"The semantics of the correlatedNotifications attribute type are specified in 
the Correlated Notifications parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.CorrelatedNotifications;
        BEHAVIOUR
        correlatedNotificationsBehaviour        BEHAVIOUR
        DEFINED AS      "This attribute contains a set of notification identifiers and, if necessary, their associated
managed object instance names, for the notifications that are considered to be correlated to this notification.";;

REGISTERED AS    {smi2AttributeID 12};

-- 10.7.1.8        Event time

eventTime       ATTRIBUTE
LIBCOMMENT
"The semantics of the eventTime attribute type are specified in the Event Time 
parameter in CCITT Rec. X.710 | ISO/IEC 9595.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.EventTime;
        MATCHES FOR EQUALITY, ORDERING;
        BEHAVIOUR       timeOrdering;

REGISTERED AS   {smi2AttributeID 13};

timeOrdering    BEHAVIOUR
        DEFINED AS
        "The year, month, day, hour, minute and seconds field are compared in order to determine whether the
specified value is greater or less than the value of the attribute. The values for the year, month,day,
hour,minute and seconds are determined from the character string representation and the year value is first
compared. If equal the month value is compared and this process is continued if the compared fields  are
equal";

-- 10.7.1.9        Event type

eventType       ATTRIBUTE
LIBCOMMENT
"The semantics of the eventType attribute type are specified in the Event type 
parameter in CCITT Rec. X.710 | ISO/IEC 9595.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.EventTypeId;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 14};

-- 10.7.1.10        Monitored attributes

monitoredAttributes     ATTRIBUTE
LIBCOMMENT
"The semantics of the monitoredAttributes attribute type are specified in the 
Monitored Attributes parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.MonitoredAttributes;

REGISTERED AS   {smi2AttributeID 15};

-- 10.7.1.11 Notification identifier

notificationIdentifier  ATTRIBUTE
LIBCOMMENT
"The semantics of the notificationIdentifier attribute type are specified in the
Notification identifier parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.NotificationIdentifier;
        MATCHES FOR EQUALITY;
        BEHAVIOUR
        notificationIdentifierBehaviour BEHAVIOUR
        DEFINED AS      "This attribute contains a unique identifier for the notification, which may be present in the
correlated notifications attribute of other notifications.";;

REGISTERED AS    {smi2AttributeID 16};

-- 10.7.1.12 Perceived severity

perceivedSeverity       ATTRIBUTE
LIBCOMMENT
"The semantics of the perceivedSeverity attribute type are specified in the 
Perceived Severity parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.PerceivedSeverity;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 17};

-- 10.7.1.13 Probable cause

probableCause   ATTRIBUTE
LIBCOMMENT
"The semantics of the probableCause attribute type are specified in the Probable
Cause parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ProbableCause;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 18};

-- 10.7.1.14 Proposed repair actions

proposedRepairActions   ATTRIBUTE
LIBCOMMENT
"The semantics of the proposedRepairActions attribute type are specified in the
Proposed Repair Action parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ProposedRepairActions;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 19};

-- 10.7.1.15 Relationship change definition

relationshipChangeDefinition    ATTRIBUTE
LIBCOMMENT
"The semantics of the relationshipChangeDefinition attribute type are
defined in the Relationship change definition parameter in 
CCITT Rec. X.732 | ISO/IEC 10164-3.";
        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AttributeValueChangeDefinition;
        BEHAVIOUR
        relationshipChangeDefinitionBehaviour   BEHAVIOUR
        DEFINED AS      "This attribute contains a set of relationship attribute identifiers and their old and new
values.";;

REGISTERED AS   {smi2AttributeID 20};

-- 10.7.1.16 Security alarm cause

securityAlarmCause      ATTRIBUTE
LIBCOMMENT
"The semantics of the securityAlarmCause attribute type are specified in the 
Security alarm cause parameter in CCITT Rec. X.736 | ISO/IEC 10164-7.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SecurityAlarmCause;
        MATCHES FOR EQUALITY ;
        BEHAVIOUR
        securityAlarmCauseBehaviour     BEHAVIOUR
        DEFINED AS      "This attribute specifies the cause of the security alarm";;

REGISTERED AS   {smi2AttributeID 21};

-- 10.7.1.17 Security alarm detector

securityAlarmDetector   ATTRIBUTE
LIBCOMMENT
"The semantics of the securityAlarmDetector attribute type are specified in the
Security alarm Detector parameter in CCITT Rec. X.736 | ISO/IEC 10164-7.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SecurityAlarmDetector;
        MATCHES FOR EQUALITY;
        BEHAVIOUR
        securityAlarmDetectorBehaviour  BEHAVIOUR
        DEFINED AS      "This attribute identifies the entity that detected the security alarm";;

REGISTERED AS   {smi2AttributeID 22};

-- 10.7.1.18 Security alarm severity

securityAlarmSeverity   ATTRIBUTE
LIBCOMMENT
"The semantics of the securityAlarmSeverity attribute type are specified in the
Security alarm severity parameter in CCITT Rec. X.736 | ISO/IEC 10164-7.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SecurityAlarmSeverity;
        MATCHES FOR EQUALITY;
        BEHAVIOUR
        securityAlarmSeverityBehaviour  BEHAVIOUR
        DEFINED AS      "This attribute indicates the severity of the security alarm";;

REGISTERED AS   {smi2AttributeID 23};

-- 10.7.1.19        Service provider

serviceProvider ATTRIBUTE
LIBCOMMENT
"The semantics of the serviceProvider attribute type are specified in the 
Service provider parameter in CCITT Rec. X.736 | ISO/IEC 10164-7.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ServiceProvider;
        MATCHES FOR EQUALITY;
        BEHAVIOUR
        serviceProviderBehaviour        BEHAVIOUR
        DEFINED AS      "This attribute contains information about the service provider associated with the service
request that caused the security alarm";;

REGISTERED AS   {smi2AttributeID 24};

-- 10.7.1.20 Service user

serviceUser     ATTRIBUTE
LIBCOMMENT
"The semantics of the serviceUser attribute type are specified in the Service 
user parameter in CCITT Rec. X.736 | ISO/IEC 10164-7.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ServiceUser;
        MATCHES FOR EQUALITY ;
        BEHAVIOUR
        serviceUserBehaviour    BEHAVIOUR
        DEFINED AS      "This attribute contains information about the service user associated with the service
request that caused the security alarm";;

REGISTERED AS   {smi2AttributeID 25};

-- 10.7.1.21 Source indicator

sourceIndicator ATTRIBUTE
LIBCOMMENT
"The semantics of the sourceIndicator attribute type are defined in the Source 
Indicator parameter in CCITT Rec. X.730 | ISO/IEC 10164-1.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SourceIndicator;
        MATCHES FOR EQUALITY;
        BEHAVIOUR
        sourceIndicatorBehaviour        BEHAVIOUR
        DEFINED AS      "This attribute is used in notifications to indicate the source of the operation that resulted in
generating the notification ";;

REGISTERED AS   {smi2AttributeID 26};

-- 10.7.1.22 Specific problems

specificProblems         ATTRIBUTE
LIBCOMMENT
"The semantics of the specificProblems attribute type are specified in the 
Specific Problems parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SpecificProblems;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION ;

REGISTERED AS   {smi2AttributeID 27};

-- 10.7.1.23        State change definition

stateChangeDefinition   ATTRIBUTE
LIBCOMMENT
"The semantics of the stateChangeDefinition attribute type are defined in the 
State change definition parameter in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AttributeValueChangeDefinition;
        BEHAVIOUR
        stateChangeDefinitionBehaviour  BEHAVIOUR
        DEFINED AS      "This attribute contains a set of state attribute identifiers and their old and new values.";;

REGISTERED AS   {smi2AttributeID 28};

-- 10.7.1.24        Threshold info

thresholdInfo   ATTRIBUTE
LIBCOMMENT
"The semantics of the thresholdInfo attribute type are specified in the 
Threshold Info parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ThresholdInfo;

REGISTERED AS   {smi2AttributeID 29};

-- 10.7.1.25 Trend indication

trendIndication ATTRIBUTE
LIBCOMMENT
"The semantics of the trendIndication attribute type are specified in the Trend
Indication parameter in CCITT Rec. X.733 | ISO/IEC 10164-4.";
        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.TrendIndication;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 30};

-- 10.7.2  States related

-- 10.7.2.1        Administrative state

administrativeState     ATTRIBUTE
LIBCOMMENT
"The semantics of the administrativeState attribute type are specified in the 
Administrative State attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AdministrativeState;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 31};

-- 10.7.2.2        Alarm status

alarmStatus     ATTRIBUTE
LIBCOMMENT
"The semantics of the alarmStatus attribute type are specified in the Alarm 
Status attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AlarmStatus;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION ;

REGISTERED AS   {smi2AttributeID 32};

-- 10.7.2.3        Availability status

availabilityStatus      ATTRIBUTE
LIBCOMMENT
"The semantics of the availabilityStatus attribute type are specified in the 
Availability Status attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.AvailabilityStatus;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION ;

REGISTERED AS   {smi2AttributeID 33};

-- 10.7.2.4        Control status

controlStatus   ATTRIBUTE
LIBCOMMENT
"The semantics of the controlStatus attribute type are specified in the Control
Status attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ControlStatus;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION ;

REGISTERED AS   {smi2AttributeID 34};

-- 10.7.2.5 Operational state

operationalState        ATTRIBUTE
LIBCOMMENT
"The semantics of the operationalState attribute type are specified in the 
Operational State attribute in CCITT Rec.  X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.OperationalState;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 35};

-- 10.7.2.6        Procedural status

proceduralStatus        ATTRIBUTE
LIBCOMMENT
"The semantics of the proceduralStatus attribute type are specified in the 
Procedural Status attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ProceduralStatus;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 36};

-- 10.7.2.7        Standby status

standbyStatus   ATTRIBUTE
LIBCOMMENT
"The semantics of the standbyStatus attribute type are specified in the Standby
Status attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.StandbyStatus;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 37};

-- 10.7.2.8        Unknown status

unknownStatus   ATTRIBUTE
LIBCOMMENT
"The semantics of the unknownStatus attribute type are specified in the Unknown
Status attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.UnknownStatus;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 38};

-- 10.7.2.9        Usage state

usageState      ATTRIBUTE
LIBCOMMENT
"The semantics of the usageState attribute type are specified in the Usage State
attribute in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.UsageState;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 39};

-- 10.7.2.10 State

state   ATTRIBUTE GROUP
LIBCOMMENT
"The semantics of the State group attribute type are specified in the State 
attribute group in CCITT Rec. X.731 | ISO/IEC 10164-2.";

        DESCRIPTION " This is defined as an empty attribute group. The elements of this group are composed of
state attributes in the managed object. The state attributes may include those specified in CCITT Rec.
X.731|ISO/IEC 10164-2 and others that are specific to the managed object class.";

REGISTERED AS   {smi2AttributeGroup 1};

-- 10.7.3  Relationships related

-- 10.7.3.1        Back-up object

backUpObject    ATTRIBUTE
LIBCOMMENT
"The semantics of the backUpObject attribute type are specified in Back-Up Object
relationship attribute in CCITT Rec. X.732 | ISO/IEC 10164-3. This attribute is 
also used in CCITT Rec. X.733 | ISO/IEC 10164-4.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.BackUpRelationshipObject;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 40};

-- 10.7.3.2        Backed-up object

backedUpObject  ATTRIBUTE
LIBCOMMENT
"The semantics of the backedUpObject attribute type are specified in Backed-Up 
Object relationship attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.BackUpRelationshipObject;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 41};


-- 10.7.3.3        Member

member  ATTRIBUTE
LIBCOMMENT
"The semantics of member attribute type are specified in Member relationship 
attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.GroupObjects;
        MATCHES FOR EQUALITY,SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 42};

-- 10.7.3.4        Owner

owner   ATTRIBUTE
LIBCOMMENT
"The semantics of owner attribute type are specified in Owner relationship
attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.GroupObjects;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 43};

-- 10.7.3.5        Peer

peer    ATTRIBUTE
LIBCOMMENT
"The semantics of peer attribute type are specified in Peer relationship 
attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.BackUpRelationshipObject;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 44};

-- 10.7.3.6        Primary

primary  ATTRIBUTE
LIBCOMMENT
"The semantics of primary attribute type are specified in Primary relationship 
attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.PrioritisedObject;

REGISTERED AS   {smi2AttributeID 45};

-- 10.7.3.7        Provider object

providerObject  ATTRIBUTE
LIBCOMMENT
"The semantics of providerObject attribute type are specified in Provider Object
relationship attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.PrioritisedObject;

REGISTERED AS   {smi2AttributeID 46};

-- 10.7.3.8        Relationships

relationships   ATTRIBUTE GROUP
LIBCOMMENT
"The semantics of the relationships group attribute type are specified in the 
Relationships group attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        DESCRIPTION " This is defined as an empty attribute group. The elements of this group are composed of
relationship attributes in the managed object. The relatioship attributes may include those specified in CCITT
Rec. X.732 | ISO/IEC 10164-3 and others that are specific to the managed object class.";

REGISTERED AS   {smi2AttributeGroup 2};

-- 10.7.3.9        Secondary

secondary       ATTRIBUTE
LIBCOMMENT
"The semantics of secondary attribute type are used in defining Secondary 
relationship attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.PrioritisedObject;

REGISTERED AS   {smi2AttributeID 47};

-- 10.7.3.10 User object

userObject      ATTRIBUTE
LIBCOMMENT
"The semantics of userObject attribute type are used in defining User Object 
Relationship attribute in CCITT Rec. X.732 | ISO/IEC 10164-3.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.PrioritisedObject;

REGISTERED AS   {smi2AttributeID 48};

-- 10.7.4  Other attribute types

-- 10.7.4.1        Active destination

activeDestination       ATTRIBUTE
LIBCOMMENT
"The semantics of the activeDestination attribute type are specified in the 
Active destination attribute in CCITT Rec. X.734 | ISO/IEC 10164-5.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ActiveDestination;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 49};

-- 10.7.4.2        Allomorphs

allomorphs      ATTRIBUTE
LIBCOMMENT
"The allomorphs attribute appears in a managed object if and only if that 
managed object supports allomorphism.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.Allomorphs;
         MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 50};

-- 10.7.4.3        Back-up destination list

backUpDestinationList   ATTRIBUTE
LIBCOMMENT
"The semantics of the backUpDestinationList attribute type are specified in the
Backup destination list attribute in CCITT Rec. X.734 | ISO/IEC 10164-5.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.BackUpDestinationList;
        MATCHES FOR EQUALITY ,SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 51};

-- 10.7.4.4        Capacity alarm threshold

capacityAlarmThreshold  ATTRIBUTE
LIBCOMMENT
"The semantics of the capacityAlarmThreshold attribute type are specified in the
Capacity Alarm Threshold attribute in CCITT Rec. X.735 | ISO/IEC10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.CapacityAlarmThreshold;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 52};

-- 10.7.4.5        Confirmed mode

confirmedMode   ATTRIBUTE
LIBCOMMENT
"The semantics of the confirmedMode attribute type are specified in the 
Confirmed mode attribute in CCITT Rec.  X.734 | ISO/IEC10164-5.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ConfirmedMode;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 53};

-- 10.7.4.6        Current log size

currentLogSize  ATTRIBUTE
LIBCOMMENT
"The semantics of the currentLogSize attribute type are specified in the Current
Log Size attribute in CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.CurrentLogSize;
        MATCHES FOR EQUALITY, ORDERING;

REGISTERED AS   {smi2AttributeID 54};

-- 10.7.4.7        Destination

destination     ATTRIBUTE
LIBCOMMENT
"The semantics of the destination attribute type are specified in the 
Destination Address attribute in CCITT Rec. X.734 | ISO/IEC 10164-5.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.Destination;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 55};

-- 10.7.4.8        Discriminator construct

discriminatorConstruct  ATTRIBUTE
LIBCOMMENT
"The semantics of the discriminatorConstruct attribute type are specified in the
Discriminator Construct attribute in CCITT Rec. X.734 | ISO/IEC 10164-5.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.DiscriminatorConstruct;

REGISTERED AS   {smi2AttributeID 56};

-- 10.7.4.9        Intervals of day

intervalsOfDay  ATTRIBUTE
LIBCOMMENT
"The semantics of the intervalsOfDay attribute type are specified in the Daily 
Scheduling package in CCITT Rec. X.734 | ISO/IEC 10164-5 and 
CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.IntervalsOfDay;

REGISTERED AS   {smi2AttributeID 57};

-- 10.7.4.10 Log full action

logFullAction   ATTRIBUTE
LIBCOMMENT
"The semantics of the logFullAction attribute type are specified in the Log Full
Action attribute in CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.LogFullAction;
        MATCHES FOR EQUALITY ;

REGISTERED AS   {smi2AttributeID 58};

-- 10.7.4.11 Logging time

loggingTime     ATTRIBUTE
LIBCOMMENT
"The semantics of the loggingTime attribute type are specified in the Logging 
Time attribute in CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.LoggingTime;
        MATCHES FOR EQUALITY, ORDERING;

REGISTERED AS   {smi2AttributeID 59};

-- 10.7.4.12 Managed object class

managedObjectClass      ATTRIBUTE
LIBCOMMENT
"The managedObjectClass attribute type is specified to allow filtering of the 
Managed Object Class parameter when events reports are logged as records.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ObjectClass;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 60};

-- 10.7.4.13 Managed object instance

managedObjectInstance   ATTRIBUTE
LIBCOMMENT
"The managedObjectInstance attribute type is specified to allow filtering of the
Managed Object Instance parameter when events reports are logged as records.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ObjectInstance;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 61};

-- 10.7.4.14 Max log size

maxLogSize      ATTRIBUTE
LIBCOMMENT
"The semantics of the maxLogSize attribute type are specified in the Max Log 
Size attribute in CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.MaxLogSize;
        MATCHES FOR EQUALITY, ORDERING ;
        BEHAVIOUR
        maxSizeOrderingBehaviour        BEHAVIOUR
        DEFINED AS " The ordering is the same as for sequentially increasing postive integers except that a value of
zero is largest and denotes infinite size.";;

REGISTERED AS   {smi2AttributeID 62};

-- 10.7.4.15 Name binding

nameBinding     ATTRIBUTE
LIBCOMMENT
"The nameBinding attribute appears in every managed object and identifies the 
name binding with which the managed object was instantiated. The semantics of
this attribute are described in CCITT Rec. X.720 | ISO/IEC 10165-1.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.NameBinding;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 63};

-- 10.7.4.16        Number of records

numberOfRecords ATTRIBUTE
LIBCOMMENT
"The semantics of the numberOfRecords attribute type are specified in the Number
of Records attribute in CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.NumberOfRecords;
        MATCHES FOR EQUALITY, ORDERING ;

REGISTERED AS   {smi2AttributeID 64};

-- 10.7.4.17 Object class

objectClass     ATTRIBUTE
LIBCOMMENT
"The objectClass attribute appears in every managed object and indicates the 
managed object class to which the managed object belongs. The semantics of 
ordering on object classes are described in 
CCITT Rec. X.720 | ISO/IEC 10165-1.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ObjectClass;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 65};

-- 10.7.4.18 Packages

packages        ATTRIBUTE
LIBCOMMENT
"The packages attribute appears in every managed object in which any registered
package, other than the packagePackage has been instantiated.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.Packages;
        MATCHES FOR EQUALITY, SET-COMPARISON, SET-INTERSECTION;

REGISTERED AS   {smi2AttributeID 66};

-- 10.7.4.19 Scheduler name

schedulerName   ATTRIBUTE
LIBCOMMENT
"The semantics of schedulerName attribute type are specified in the External 
Scheduler scheduling package in CCITT Rec. X.734 | ISO/IEC 10164-5 and 
CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.ObjectInstance;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 67};

-- 10.7.4.20 Start time

startTime       ATTRIBUTE
LIBCOMMENT
"The semantics of startTime attribute type are specified in the Weekly 
Scheduling package in CCITT Rec. X.734 | ISO/IEC 10164-5 
and CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.StartTime;
        MATCHES FOR EQUALITY, ORDERING;
        BEHAVIOUR timeOrdering;

REGISTERED AS   {smi2AttributeID 68};

-- 10.7.4.21 Stop time

stopTime        ATTRIBUTE
LIBCOMMENT
"The semantics of stopTime attribute type are specified in the Weekly 
Scheduling package in CCITT Rec. X.734 | ISO/IEC 10164-5 and 
CCITT Rec. X.735 | ISO/IEC 10164-6. The matching criterion ""Ordering"" 
is applicable only when the ASN.1 type GeneralizedTime choice is selected for
StopTime.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.StopTime;
        MATCHES FOR EQUALITY, ORDERING;
        BEHAVIOUR timeOrdering;

REGISTERED AS   {smi2AttributeID 69};

-- 10.7.4.22 Supported Features

supportedFeatures       ATTRIBUTE
        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.SupportedFeatures;
        MATCHES FOR SET-COMPARISON, SET-INTERSECTION, EQUALITY;
        BEHAVIOUR
        supportedFeaturesBehaviour      BEHAVIOUR
        DEFINED AS      "This attribute is used to identify features within the system that are capable of being
managed. The registration of each feature is performed by the development authority for the feature and will
typically identify a specification in which the details of what can be managed are provided";;

REGISTERED AS   {smi2AttributeID 70};

-- 10.7.4.23 Week mask

weekMask        ATTRIBUTE
LIBCOMMENT
"The semantics of weekMask attribute type are specified in the Weekly 
Scheduling package in CCITT Rec. X.734 | ISO/IEC 10164-5 and 
CCITT Rec. X.735 | ISO/IEC 10164-6.";

        WITH ATTRIBUTE SYNTAX Attribute-ASN1Module.WeekMask;
        MATCHES FOR EQUALITY;

REGISTERED AS   {smi2AttributeID 71};

-- 11      Definition of action types

-- This Recommendation | International Standard defines a number of action types
-- which are referenced by the System Management Functions in 
-- CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7.
--
-- NOTE - There are no action types currently defined in the system management 
-- functions and this section is a place holder for future addition.

-- 12      Definition of parameters

-- This Recommendation | International Standard defines a number of parameters 
-- which are referenced by the System Management Functions in 
-- CCITT Recs. X.730-736 | ISO/IEC 10164 Parts 1 to 7. The definition of 
-- parameter template is specified in CCITT Rec. X.722 | ISO/IEC 10165-4.

miscellaneousError      PARAMETER
LIBCOMMENT
"The miscellaneousError parameter is included in this Recommendation | 
International Standard as a possible specific error when processing failure
is reported using CMIP linked reply mechanism. This may be imported in any 
managed object class definition.";

        CONTEXT SPECIFIC-ERROR;
        WITH SYNTAX Parameter-ASN1Module.MiscellaneousError;
        BEHAVIOUR
        miscellaneousErrorBehaviour     BEHAVIOUR
        DEFINED AS " When a processing error failure has occurred and the error condition encountered does not
match any of the object's defined specific error types, this value is used.";;

REGISTERED AS   {smi2Parameter 1};

-- 13      Definition of notification types

-- This Recommendation | International Standard defines a number of notification
-- types which are applicable to a wide variety of managed object classes.
-- Each notification type definition comprises

--  -       the structure of the notification data carried in the management 
--          protocol;

--  -       the behaviour of the notification;

--  -       the structure of the notification result data carried in the 
--          management protocol;

--  -       assignment of an object identifier value.

-- The template definition along with the allocated object identifier are 
-- specified below for each notification type. The ASN.1 supporting 
-- productions are defined in 14.3.

-- 13.1    Attribute value change

attributeValueChange    NOTIFICATION
LIBCOMMENT
"The semantics of the attributeValueChange notification type are specified in 
CCITT Rec. X.730 | ISO/IEC 10164-1.";

        BEHAVIOUR       attributeValueChangeBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.AttributeValueChangeInfo
                AND ATTRIBUTE IDS
                sourceIndicator                 sourceIndicator,
                attributeIdentifierList         attributeIdentifierList,
                attributeValueChangeDefinition  attributeValueChangeDefinition,
                notificationIdentifier          notificationIdentifier,
                correlatedNotifications         correlatedNotifications,
                additionalText                  additionalText,
                additionalInformation           additionalInformation;

REGISTERED AS   { smi2Notification 1};

attributeValueChangeBehaviour
BEHAVIOUR
        DEFINED AS "This notification type is used to report changes to the attribute such as addition or deletion of
members to one or more set valued attributes, replacement of the value of one or more attributes and setting
attribute values to their defaults.";

-- 13.2    Communications alarm
communicationsAlarm     NOTIFICATION
LIBCOMMENT
"The semantics of the communicationsAlarm notification type are specified in 
CCITT Rec. X.733 | ISO/IEC 10164-4.";

        BEHAVIOUR       communicationsAlarmBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.AlarmInfo
                AND ATTRIBUTE IDS
                probableCause           probableCause,
                specificProblems                specificProblems,
                perceivedSeverity       perceivedSeverity,
                backedUpStatus          backedUpStatus,
                backUpObject            backUpObject,
                trendIndication         trendIndication,
                thresholdInfo           thresholdInfo,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                stateChangeDefinition   stateChangeDefinition,
                monitoredAttributes     monitoredAttributes,
                proposedRepairActions   proposedRepairActions,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 2};

communicationsAlarmBehaviour
BEHAVIOUR
        DEFINED AS "This notification type is used to report when the object detects a communications error.";

-- 13.3    Environmental alarm

environmentalAlarm      NOTIFICATION
LIBCOMMENT
"The semantics of the environmentalAlarm notification type are specified in 
CCITT Rec. X.733 | ISO/IEC 10164-4.";

        BEHAVIOUR       environmentalAlarmBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.AlarmInfo
                AND ATTRIBUTE IDS
                probableCause           probableCause,
                specificProblems                specificProblems,
                perceivedSeverity       perceivedSeverity,
                backedUpStatus          backedUpStatus,
                backUpObject            backUpObject,
                trendIndication         trendIndication,
                thresholdInfo           thresholdInfo,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                stateChangeDefinition   stateChangeDefinition,
                monitoredAttributes     monitoredAttributes,
                proposedRepairActions   proposedRepairActions,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 3};

environmentalAlarmBehaviour
BEHAVIOUR
        DEFINED AS "This notification type is used to report a problem in the environment.";

-- 13.4    Equipment alarm

equipmentAlarm  NOTIFICATION
LIBCOMMENT
"The semantics of the equipmentAlarm notification types are specified in 
CCITT Rec. X.733 | ISO/IEC 10164-4.";

        BEHAVIOUR       equipmentAlarmBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.AlarmInfo
                AND ATTRIBUTE IDS
                probableCause           probableCause,
                specificProblems                specificProblems,
                perceivedSeverity       perceivedSeverity,
                backedUpStatus          backedUpStatus,
                backUpObject            backUpObject,
                trendIndication         trendIndication,
                thresholdInfo           thresholdInfo,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                stateChangeDefinition   stateChangeDefinition,
                monitoredAttributes     monitoredAttributes,
                proposedRepairActions   proposedRepairActions,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 4};

equipmentAlarmBehaviour
BEHAVIOUR
        DEFINED AS "This notification type is used to report a failure in the equipment.";

-- 13.5    Integrity violation

integrityViolation      NOTIFICATION
LIBCOMMENT
"The semantics of the integrityViolation notification type are specified in 
CCITT Rec. X.736 | ISO/IEC 10164-7.";

        BEHAVIOUR       integrityViolationBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.SecurityAlarmInfo
                AND ATTRIBUTE IDS
                securityAlarmCause      securityAlarmCause,
                securityAlarmSeverity   securityAlarmSeverity,
                securityAlarmDetector   securityAlarmDetector,
                serviceUser             serviceUser,
                serviceProvider                 serviceProvider,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 5};

integrityViolationBehaviour     BEHAVIOUR
        DEFINED AS      "This notification is used to report that a potential interruption in information flow has
occurred such that information may have been illegally modified, inserted or deleted.";

-- 13.6    Object creation

objectCreation  NOTIFICATION
LIBCOMMENT
"The semantics of the objectCreation notification type are specified in 
CCITT Rec. X.730 | ISO/IEC 10164-1.";

        BEHAVIOUR       objectCreationBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.ObjectInfo
                AND ATTRIBUTE IDS
                sourceIndicator         sourceIndicator,
                attributeList           attributeList,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 6};

objectCreationBehaviour
BEHAVIOUR
        DEFINED AS "This notification type is used to report the creation of a managed object to another open
system.";

-- 13.7    Object deletion

objectDeletion  NOTIFICATION
LIBCOMMENT
"The semantics of the objectDeletion notification type are specified in 
CCITT Rec. X.730 | ISO/IEC 10164-1.";

        BEHAVIOUR       objectDeletionBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.ObjectInfo
                AND ATTRIBUTE IDS
                sourceIndicator         sourceIndicator,
                attributeList           attributeList,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 7};

objectDeletionBehaviour
BEHAVIOUR
        DEFINED AS "This notification type is used to report the deletion of a managed object to another open
system.";

-- 13.8    Operational violation

operationalViolation    NOTIFICATION
LIBCOMMENT
"The semantics of the operationalViolation notification type are specified in 
CCITT Rec. X.736 | ISO/IEC 10164-7.";

        BEHAVIOUR       operationalViolationBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.SecurityAlarmInfo
                AND ATTRIBUTE IDS
                securityAlarmCause      securityAlarmCause,
                securityAlarmSeverity   securityAlarmSeverity,
                securityAlarmDetector   securityAlarmDetector ,
                serviceUser             serviceUser,
                serviceProvider                 serviceProvider,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 8};
operationalViolationBehaviour   BEHAVIOUR
        DEFINED AS      "This notification is used to report that the provision of the requested service was not
possible due to the unavailability, malfunction or incorrect invocation of the service.";

-- 13.9    Physical violation

physicalViolation       NOTIFICATION
LIBCOMMENT
"The semantics of the physicalViolation notification type are specified in 
CCITT Rec. X.736 | ISO/IEC 10164-7.";

        BEHAVIOUR       physicalViolationBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.SecurityAlarmInfo
                AND ATTRIBUTE IDS
                securityAlarmCause      securityAlarmCause,
                securityAlarmSeverity   securityAlarmSeverity,
                securityAlarmDetector   securityAlarmDetector ,
                serviceUser             serviceUser,
                serviceProvider         serviceProvider,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   { smi2Notification 9};

physicalViolationBehaviour      BEHAVIOUR
        DEFINED AS      "This notification is used to report that a physical resource has been violated in a way that
indicates a potential security attack.";

-- 13.10   Processing error alarm

processingErrorAlarm    NOTIFICATION
LIBCOMMENT
"The semantics of the processingErrorAlarm notification type are specified in 
CCITT Rec. X.733 | ISO/IEC 10164-4.";

        BEHAVIOUR        processingErrorAlarmBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.AlarmInfo
                AND ATTRIBUTE IDS
                probableCause           probableCause,
                specificProblems                specificProblems,
                perceivedSeverity       perceivedSeverity,
                backedUpStatus          backedUpStatus,
                backUpObject            backUpObject,
                trendIndication         trendIndication,
                thresholdInfo           thresholdInfo,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                stateChangeDefinition   stateChangeDefinition,
                monitoredAttributes     monitoredAttributes,
                proposedRepairActions   proposedRepairActions,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 10};

processingErrorAlarmBehaviour   BEHAVIOUR
        DEFINED AS      "This notification type is used to report processing failure in a managed object.";

-- 13.11   Quality of service alarm

qualityofServiceAlarm   NOTIFICATION
LIBCOMMENT
"The semantics of the qualityofServiceAlarm notification type are specified in 
CCITT Rec. X.733 | ISO/IEC 10164-4.";

        BEHAVIOUR       qualityofServiceAlarmBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.AlarmInfo
                AND ATTRIBUTE IDS
                probableCause           probableCause,
                specificProblems                specificProblems,
                perceivedSeverity       perceivedSeverity,
                backedUpStatus          backedUpStatus,
                backUpObject            backUpObject,
                trendIndication         trendIndication,
                thresholdInfo           thresholdInfo,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                stateChangeDefinition   stateChangeDefinition,
                monitoredAttributes     monitoredAttributes,
                proposedRepairActions   proposedRepairActions,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   {smi2Notification 11};

qualityofServiceAlarmBehaviour  BEHAVIOUR
        DEFINED AS      "This notification type is used to report a failure in the quality of service of the managed
object.";

-- 13.12   Relationship change

relationshipChange      NOTIFICATION
LIBCOMMENT
"The semantics of the relationshipChange notification type are specified in 
CCITT Rec. X.732 | ISO/IEC 10164-3.";

        BEHAVIOUR       relationshipChangeBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.RelationshipChangeInfo
                AND ATTRIBUTE IDS
                sourceIndicator                 sourceIndicator,
                attributeIdentifierList         attributeIdentifierList,
                relationshipChangeDefinition    relationshipChangeDefinition,
                notificationIdentifier          notificationIdentifier,
                correlatedNotifications         correlatedNotifications,
                additionalText                  additionalText,
                additionalInformation           additionalInformation;

REGISTERED AS   { smi2Notification 12};

relationshipChangeBehaviour     BEHAVIOUR
        DEFINED AS      "This notification type is used to report the change in the value of one or more relationship
attributes of a managed object, that result through either internal operation of the managed object or via
management operation.";

-- 13.13   Security service or mechanism violation

securityServiceOrMechanismViolation     NOTIFICATION
LIBCOMMENT
"The semantics of the securityServiceOrMechanismViolation notification type are
specified in CCITT Rec. X.736 | ISO/IEC 10164-7.";

        BEHAVIOUR       securityServiceOrMechanismViolationBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.SecurityAlarmInfo
                AND ATTRIBUTE IDS
                securityAlarmCause      securityAlarmCause,
                securityAlarmSeverity   securityAlarmSeverity,
                securityAlarmDetector   securityAlarmDetector,
                serviceUser             serviceUser,
                serviceProvider         serviceProvider,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   { smi2Notification 13};

securityServiceOrMechanismViolationBehaviour    BEHAVIOUR
        DEFINED AS      "This notification is used to report that a security attack has been detected by a security
service or mechanism.";

-- 13.14   State change

stateChange     NOTIFICATION
LIBCOMMENT
"The semantics of the stateChange notification type are specified in 
CCITT Rec. X.731 | ISO/IEC 10164-2.";

        BEHAVIOUR       stateChangeBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.StateChangeInfo
                AND ATTRIBUTE IDS
                sourceIndicator         sourceIndicator,
                attributeIdentifierList attributeIdentifierList,
                stateChangeDefinition   stateChangeDefinition,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   { smi2Notification 14};

stateChangeBehaviour    BEHAVIOUR
        DEFINED AS      "This notification type is used to report the change in the the value of one or more state
attributes of a managed object, that result through either internal operation of the managed object or via
management operation.";

-- 13.15   Time domain violation

timeDomainViolation     NOTIFICATION
LIBCOMMENT
"The semantics of the timeDomainViolation notification type are specified in 
CCITT Rec. X.736 | ISO/IEC 10164-7.";

        BEHAVIOUR       timeDomainViolationBehaviour;
        WITH INFORMATION SYNTAX Notification-ASN1Module.SecurityAlarmInfo
        AND ATTRIBUTE IDS
                securityAlarmCause      securityAlarmCause,
                securityAlarmSeverity   securityAlarmSeverity,
                securityAlarmDetector   securityAlarmDetector ,
                serviceUser             serviceUser,
                serviceProvider         serviceProvider,
                notificationIdentifier  notificationIdentifier,
                correlatedNotifications correlatedNotifications,
                additionalText          additionalText,
                additionalInformation   additionalInformation;

REGISTERED AS   { smi2Notification 15};

timeDomainViolationBehaviour    BEHAVIOUR
        DEFINED AS      "This notification is used to report that an event has occurred at an unexpected or prohibited
time.";
