diff --git a/asn1/Remote-Operations-Information-Objects.asn b/asn1/Remote-Operations-Information-Objects.asn
new file mode 100644
index 0000000..74be149
--- /dev/null
+++ b/asn1/Remote-Operations-Information-Objects.asn
@@ -0,0 +1,127 @@
+-- Generated by Asnp, the pretty-printer of France Telecom R&D (http://asn1.elibel.tm.fr/asnp/)
+Remote-Operations-Information-Objects {joint-iso-itu-t remote-operations(4)
+  informationObjects(5) version1(0)} 
+  
+DEFINITIONS
+
+::=
+
+BEGIN
+
+-- exports everything
+IMPORTS
+  emptyBind, emptyUnbind
+    FROM Remote-Operations-Useful-Definitions {joint-iso-itu-t
+      remote-operations(4) useful-definitions(7) version1(0)};
+
+OPERATION ::= CLASS {
+  &ArgumentType          OPTIONAL,
+  &argumentTypeOptional  BOOLEAN OPTIONAL,
+  &returnResult          BOOLEAN DEFAULT TRUE,
+  &ResultType            OPTIONAL,
+  &resultTypeOptional    BOOLEAN OPTIONAL,
+  &Errors                ERROR OPTIONAL,
+  &Linked                OPERATION OPTIONAL,
+  &synchronous           BOOLEAN DEFAULT FALSE,
+  &alwaysReturns         BOOLEAN DEFAULT TRUE,
+  &InvokePriority        Priority OPTIONAL,
+  &ResultPriority        Priority OPTIONAL,
+  &operationCode         Code UNIQUE OPTIONAL
+}
+WITH SYNTAX {
+  [ARGUMENT &ArgumentType
+   [OPTIONAL &argumentTypeOptional]]
+  [RESULT &ResultType
+   [OPTIONAL &resultTypeOptional]]
+  [RETURN RESULT &returnResult]
+  [ERRORS &Errors]
+  [LINKED &Linked]
+  [SYNCHRONOUS &synchronous]
+  [ALWAYS RESPONDS &alwaysReturns]
+  [INVOKE PRIORITY &InvokePriority]
+  [RESULT-PRIORITY &ResultPriority]
+  [CODE &operationCode]
+}
+
+ERROR ::= CLASS {
+  &ParameterType          OPTIONAL,
+  &parameterTypeOptional  BOOLEAN OPTIONAL,
+  &ErrorPriority          Priority OPTIONAL,
+  &errorCode              Code UNIQUE OPTIONAL
+}
+WITH SYNTAX {
+  [PARAMETER &ParameterType
+   [OPTIONAL &parameterTypeOptional]]
+  [PRIORITY &ErrorPriority]
+  [CODE &errorCode]
+}
+
+OPERATION-PACKAGE ::= CLASS {
+  &Both      OPERATION OPTIONAL,
+  &Consumer  OPERATION OPTIONAL,
+  &Supplier  OPERATION OPTIONAL,
+  &id        OBJECT IDENTIFIER UNIQUE OPTIONAL
+}
+-- continued on the next page
+WITH SYNTAX {
+  [OPERATIONS &Both]
+  [CONSUMER INVOKES &Supplier]
+  [SUPPLIER INVOKES &Consumer]
+  [ID &id]
+}
+
+CONNECTION-PACKAGE ::= CLASS {
+  &bind                OPERATION DEFAULT emptyBind,
+  &unbind              OPERATION DEFAULT emptyUnbind,
+  &responderCanUnbind  BOOLEAN DEFAULT FALSE,
+  &unbindCanFail       BOOLEAN DEFAULT FALSE,
+  &id                  OBJECT IDENTIFIER UNIQUE OPTIONAL
+}
+WITH SYNTAX {
+  [BIND &bind]
+  [UNBIND &unbind]
+  [RESPONDER UNBIND &responderCanUnbind]
+  [FAILURE TO UNBIND &unbindCanFail]
+  [ID &id]
+}
+
+CONTRACT ::= CLASS {
+  &connection           CONNECTION-PACKAGE OPTIONAL,
+  &OperationsOf         OPERATION-PACKAGE OPTIONAL,
+  &InitiatorConsumerOf  OPERATION-PACKAGE OPTIONAL,
+  &InitiatorSupplierOf  OPERATION-PACKAGE OPTIONAL,
+  &id                   OBJECT IDENTIFIER UNIQUE OPTIONAL
+}
+WITH SYNTAX {
+  [CONNECTION &connection]
+  [OPERATIONS OF &OperationsOf]
+  [INITIATOR CONSUMER OF &InitiatorConsumerOf]
+  [RESPONDER CONSUMER OF &InitiatorSupplierOf]
+  [ID &id]
+}
+
+ROS-OBJECT-CLASS ::= CLASS {
+  &Is                    ROS-OBJECT-CLASS OPTIONAL,
+  &Initiates             CONTRACT OPTIONAL,
+  &Responds              CONTRACT OPTIONAL,
+  &InitiatesAndResponds  CONTRACT OPTIONAL,
+  &id                    OBJECT IDENTIFIER UNIQUE
+}
+WITH SYNTAX {
+  [IS &Is]
+  [BOTH &InitiatesAndResponds]
+  [INITIATES &Initiates]
+  [RESPONDS &Responds]
+  ID &id
+}
+
+Code ::= CHOICE {local   INTEGER,
+                 global  OBJECT IDENTIFIER
+}
+
+Priority ::= INTEGER(0..MAX)
+
+END -- end of Information Object specifications
+
+-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
+
