-- Module DirectoryOperationalBindingManagementProtocol (X.519 TC2:08/1997)
-- See also ITU-T X.519 (1997) Technical Cor. 2 (02/2001)
-- See also the index of all ASN.1 assignments needed in this document

DirectoryOperationalBindingManagementProtocol {joint-iso-itu-t ds(5) 
  module(1) dop(17) 3} DEFINITIONS ::=
BEGIN

-- EXPORTS All 
-- The types and values defined in this module are exported for use in the other ASN.1 modules contained 
-- within the Directory Specifications, and for the use of other applications which will use them to access 
-- Directory services. Other applications may use them for their own purposes, but this will not constrain
-- extensions and modifications needed to maintain or improve the Directory service.
IMPORTS
  protocolObjectIdentifiers, directoryAbstractService, opBindingManagement
    FROM UsefulDefinitions {joint-iso-itu-t ds(5) module(1)
      usefulDefinitions(0) 3}
  directoryBind, directoryUnbind
    FROM DirectoryAbstractService directoryAbstractService
  ROS-OBJECT-CLASS, CONTRACT, OPERATION-PACKAGE, CONNECTION-PACKAGE, 
    Code, OPERATION
    FROM Remote-Operations-Information-Objects {joint-iso-itu-t
      remote-operations(4) informationObjects(5) version1(0)}
  ROS{}, Bind{}, Unbind{}, InvokeId
    FROM Remote-Operations-Generic-ROS-PDUs {joint-iso-itu-t
      remote-operations(4) generic-ROS-PDUs(6) version1(0)}
  APPLICATION-CONTEXT
    FROM Remote-Operations-Information-Objects-extensions {joint-iso-itu-t
      remote-operations(4) informationObjects-extensions(8) version1(0)}
  acse, pData
    FROM Remote-Operations-Realizations {joint-iso-itu-t remote-operations(4)
      realizations(9) version1(0)}
  acse-abstract-syntax
    FROM Remote-Operations-Abstract-Syntaxes {joint-iso-itu-t
      remote-operations(4) remote-operations-abstract-syntaxes(12) version1(0)}
  id-ac-directoryOperationalBindingManagementAC, id-rosObject-dopDSA,
    id-contract-dop, id-package-dopConnection,
    id-package-operationalBindingManagement,
    id-as-directoryOperationalBindingManagementAS
    FROM ProtocolObjectIdentifiers {joint-iso-itu-t ds(5) module(1)
      protocolObjectIdentifiers(4) 3}
  establishOperationalBinding, modifyOperationalBinding,
    terminateOperationalBinding, dSAOperationalBindingManagementBind,
    dSAOperationalBindingManagementUnbind
    FROM OperationalBindingManagement {joint-iso-itu-t ds(5) module(1)
      opBindingManagement(18) 3};

-- application contexts 
directoryOperationalBindingManagementAC APPLICATION-CONTEXT ::= {
  CONTRACT                  dopContract
  ESTABLISHED BY            acse
  INFORMATION TRANSFER BY   pData
  ABSTRACT SYNTAXES
    {acse-abstract-syntax |
      directoryOperationalBindingManagementAbstractSyntax}
  APPLICATION CONTEXT NAME  id-ac-directoryOperationalBindingManagementAC
}

-- ROS objects 
dop-dsa ROS-OBJECT-CLASS ::= {BOTH  {dopContract}
                              ID    id-rosObject-dopDSA
}

-- contracts 
dopContract CONTRACT ::= {
  CONNECTION     dopConnectionPackage
  OPERATIONS OF  {dopPackage}
  ID             id-contract-dop
}

-- connection package 
dopConnectionPackage CONNECTION-PACKAGE ::= {
  BIND    dSAOperationalBindingManagementBind
  UNBIND  dSAOperationalBindingManagementUnbind
  ID      id-package-dopConnection
}

--  packages 
dopPackage OPERATION-PACKAGE ::= {
  CONSUMER INVOKES
    {establishOperationalBinding | modifyOperationalBinding |
      terminateOperationalBinding}
  ID                id-package-operationalBindingManagement
}

-- abstract syntaxes 
directoryOperationalBindingManagementAbstractSyntax ABSTRACT-SYNTAX ::= 
{DOP-PDUs
 IDENTIFIED BY  id-as-directoryOperationalBindingManagementAS
}

DOP-PDUs ::= CHOICE {
  basicRos  ROS{{DOP-InvokeIDSet}, {DOP-Invokable}, {DOP-Returnable}},
  bind      Bind{directoryBind},
  unbind    Unbind{directoryUnbind}
}

DOP-InvokeIDSet ::= InvokeId(ALL EXCEPT absent:NULL)

DOP-Invokable OPERATION ::=
  {establishOperationalBinding | modifyOperationalBinding |
   terminateOperationalBinding}

DOP-Returnable OPERATION ::=
  {establishOperationalBinding | modifyOperationalBinding |
   terminateOperationalBinding}

-- remote operation codes 
id-op-establishOperationalBinding Code ::= local:100

id-op-modifyOperationalBinding Code ::= local:102

id-op-terminateOperationalBinding Code ::= local:101

-- remote error codes 
id-err-operationalBindingError Code ::= local:100

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