Home | History | Annotate | Line # | Download | only in schema
      1 # corba.schema -- Corba Object Schema
      2 #	depends upon core.schema
      3 # $OpenLDAP$
      4 # $OpenLDAP$
      5 ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
      6 ##
      7 ## Copyright 1998-2024 The OpenLDAP Foundation.
      8 ## All rights reserved.
      9 ##
     10 ## Redistribution and use in source and binary forms, with or without
     11 ## modification, are permitted only as authorized by the OpenLDAP
     12 ## Public License.
     13 ##
     14 ## A copy of this license is available in the file LICENSE in the
     15 ## top-level directory of the distribution or, alternatively, at
     16 ## <http://www.OpenLDAP.org/license.html>.
     17 #
     18 ## Portions Copyright (C) The Internet Society (1999).
     19 ## Please see full copyright statement below.
     20 
     21 
     22 # Network Working Group                                            V. Ryan
     23 # Request for Comments: 2714                                        R. Lee
     24 # Category: Informational                                      S. Seligman
     25 #                                                   Sun Microsystems, Inc.
     26 #                                                             October 1999
     27 # 
     28 # 
     29 #   Schema for Representing CORBA Object References in an LDAP Directory
     30 # 
     31 # Status of this Memo
     32 # 
     33 #    This memo provides information for the Internet community.  It does
     34 #    not specify an Internet standard of any kind.  Distribution of this
     35 #    memo is unlimited.
     36 # 
     37 # Copyright Notice
     38 # 
     39 #    Copyright (C) The Internet Society (1999).  All Rights Reserved.
     40 # 
     41 # Abstract
     42 # 
     43 #    CORBA [CORBA] is the Common Object Request Broker Architecture
     44 #    defined by the Object Management Group. This document defines the
     45 #    schema for representing CORBA object references in an LDAP directory
     46 #    [LDAPv3].
     47 # 
     48 # [trimmed]
     49 
     50 # 3. Attribute Type Definitions
     51 # 
     52 #    The following attribute types are defined in this document:
     53 # 
     54 #        corbaIor
     55 #        corbaRepositoryId
     56 # 
     57 # 3.1 corbaIor
     58 # 
     59 #    This attribute stores the string representation of the interoperable
     60 #    object reference (IOR) for a CORBA object. An IOR is an opaque handle
     61 #    for the object which contains the information necessary to locate the
     62 #    object, even if the object is in another ORB.
     63 # 
     64 #    This attribute's syntax is 'IA5 String' and its case is
     65 #    insignificant.
     66 # 
     67 #    ( 1.3.6.1.4.1.42.2.27.4.1.14
     68 #     NAME 'corbaIor'
     69 #     DESC 'Stringified interoperable object reference of a CORBA object'
     70 #     EQUALITY caseIgnoreIA5Match
     71 #     SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
     72 #     SINGLE-VALUE
     73 #    )
     74 # 
     75 attributetype ( 1.3.6.1.4.1.42.2.27.4.1.14
     76 	NAME 'corbaIor'
     77 	DESC 'Stringified interoperable object reference of a CORBA object'
     78 	EQUALITY caseIgnoreIA5Match
     79 	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
     80 	SINGLE-VALUE )
     81 
     82 # 3.2 corbaRepositoryId
     83 # 
     84 #    Each CORBA interface has a unique "repository id" (also called "type
     85 #    id") that identifies the interface.  A CORBA object has one or more
     86 #    repository ids, one for each interface that it implements.
     87 # 
     88 #    The format of a repository id can be any string, but the OMG
     89 #    specifies four standard formats:
     90 # 
     91 #       a. IDL-style
     92 # 
     93 #        IDL:Prefix/ModuleName/InterfaceName:VersionNumber
     94 # 
     95 #    For example, the repository id for the "NamingContext" in OMG's COS
     96 #    Naming module is:  "IDL:omg.org/CosNaming/NamingContext:1.0".
     97 # 
     98 #       b. RMI-style
     99 # 
    100 #        RMI:ClassName:HashCode[:SUID]
    101 # 
    102 #    This format is used by RMI-IIOP remote objects [RMI-IIOP].
    103 #    "ClassName" is the fully qualified name of the class (for example,
    104 #    "java.lang.String"). "HashCode" is the object's hash code (that is,
    105 #    that obtained by invoking the "hashCode()" method).  "SUID" is the
    106 #    "stream unique identifier", which is a 64-bit number that uniquely
    107 #    identifies the serialization version of the class; SUID is optional
    108 #    in the repository id.
    109 # 
    110 #       c. DCE-style
    111 # 
    112 #        DCE:UUID
    113 # 
    114 #    This format is used for DCE/CORBA interoperability [CORBA-DCE].
    115 #    "UUID" represents a DCE UUID.
    116 # 
    117 #       d. "local"
    118 # 
    119 #    This format is defined by the local Object Request Broker (ORB).
    120 # 
    121 #    The corbaRepositoryId attribute is a multivalued attribute; each
    122 #    value records a single repository id of an interface implemented by
    123 #    the CORBA object.  This attribute need not contain a complete list of
    124 #    the interfaces implemented by the CORBA object.
    125 # 
    126 #    This attribute's syntax is 'Directory String' and its case is
    127 #    significant.  The values of this attribute are encoded using UTF-8.
    128 #    Some values may require translation from their native representation
    129 #    in order to be correctly encoded using UTF-8.
    130 # 
    131 #    ( 1.3.6.1.4.1.42.2.27.4.1.15
    132 #     NAME 'corbaRepositoryId'
    133 #     DESC 'Repository ids of interfaces implemented by a CORBA object'
    134 #     EQUALITY caseExactMatch
    135 #     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
    136 #    )
    137 # 
    138 # 
    139 attributetype ( 1.3.6.1.4.1.42.2.27.4.1.15
    140 	NAME 'corbaRepositoryId'
    141 	DESC 'Repository ids of interfaces implemented by a CORBA object'
    142 	EQUALITY caseExactMatch
    143 	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
    144 
    145 # 4. Object Class Definitions
    146 # 
    147 #    The following object classes are defined in this document:
    148 # 
    149 #        corbaContainer
    150 #        corbaObject
    151 #        corbaObjectReference
    152 # 
    153 # 4.1 corbaContainer
    154 # 
    155 #    This structural object class represents a container for a CORBA
    156 #    object.
    157 # 
    158 #    ( 1.3.6.1.4.1.42.2.27.4.2.10
    159 #     NAME 'corbaContainer'
    160 #     DESC 'Container for a CORBA object'
    161 #     SUP top
    162 #     STRUCTURAL
    163 #     MUST ( cn )
    164 #    )
    165 # 
    166 objectclass ( 1.3.6.1.4.1.42.2.27.4.2.10
    167 	NAME 'corbaContainer'
    168 	DESC 'Container for a CORBA object'
    169 	SUP top
    170 	STRUCTURAL
    171 	MUST cn )
    172 
    173 # 4.2 corbaObject
    174 # 
    175 #    This abstract object class is the root class for representing a CORBA
    176 #    object.
    177 # 
    178 #    ( 1.3.6.1.4.1.42.2.27.4.2.9
    179 #     NAME 'corbaObject'
    180 #     DESC 'CORBA object representation'
    181 #     SUP top
    182 #     ABSTRACT
    183 #     MAY ( corbaRepositoryId $ description )
    184 #    )
    185 # 
    186 objectclass ( 1.3.6.1.4.1.42.2.27.4.2.9
    187 	NAME 'corbaObject'
    188 	DESC 'CORBA object representation'
    189 	SUP top
    190 	ABSTRACT
    191 	MAY ( corbaRepositoryId $ description ) )
    192 
    193 # 4.3 corbaObjectReference
    194 # 
    195 #    This auxiliary object class represents a CORBA object reference.  It
    196 #    must be mixed in with a structural object class.
    197 # 
    198 #    ( 1.3.6.1.4.1.42.2.27.4.2.11
    199 #     NAME 'corbaObjectReference'
    200 #     DESC 'CORBA interoperable object reference'
    201 #     SUP corbaObject
    202 #     AUXILIARY
    203 #     MUST ( corbaIor )
    204 #    )
    205 # 
    206 objectclass ( 1.3.6.1.4.1.42.2.27.4.2.11
    207 	NAME 'corbaObjectReference'
    208 	DESC 'CORBA interoperable object reference'
    209 	SUP corbaObject
    210 	AUXILIARY
    211 	MUST corbaIor )
    212  
    213 # 10.  Full Copyright Statement
    214 #
    215 #    Copyright (C) The Internet Society (1999).  All Rights Reserved.
    216 # 
    217 #    This document and translations of it may be copied and furnished to
    218 #    others, and derivative works that comment on or otherwise explain it
    219 #    or assist in its implementation may be prepared, copied, published
    220 #    and distributed, in whole or in part, without restriction of any
    221 #    kind, provided that the above copyright notice and this paragraph are
    222 #    included on all such copies and derivative works.  However, this
    223 #    document itself may not be modified in any way, such as by removing
    224 #    the copyright notice or references to the Internet Society or other
    225 #    Internet organizations, except as needed for the purpose of
    226 #    developing Internet standards in which case the procedures for
    227 #    copyrights defined in the Internet Standards process must be
    228 #    followed, or as required to translate it into languages other than
    229 #    English.
    230 # 
    231 #    The limited permissions granted above are perpetual and will not be
    232 #    revoked by the Internet Society or its successors or assigns.
    233 # 
    234 #    This document and the information contained herein is provided on an
    235 #    "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
    236 #    TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
    237 #    BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
    238 #    HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
    239 #    MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
    240