corba.schema revision 1.1.1.5
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-2016 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# 75attributetype ( 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# 139attributetype ( 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# 166objectclass ( 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# 186objectclass ( 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# 206objectclass ( 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