]> git.sur5r.net Git - openldap/blob - servers/slapd/schema/corba.schema
Merge remote-tracking branch 'origin/mdb.master' into OPENLDAP_REL_ENG_2_4
[openldap] / servers / slapd / schema / corba.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-2013 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.