<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.
-->

<HTML>
<HEAD>
	<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252">
	<TITLE></TITLE>
	<META NAME="GENERATOR" CONTENT="OpenOffice.org 1.1.0  (Win32)">
	<META NAME="AUTHOR" CONTENT="Alex Karasulu">
	<META NAME="CREATED" CONTENT="20031214;9293611">
	<META NAME="CHANGEDBY" CONTENT="Alex Karasulu">
	<META NAME="CHANGED" CONTENT="20031214;9310627">
</HEAD>
<BODY LANG="en-US" DIR="LTR">
<P>
LDAP and X.500 directories contain schema information.  The classes and
interfaces defined within this package represent the schema information used to
constrain the values of attributes, the attributes of entries and the structure
of the directory information tree.
</P>
</BODY>
</HTML>
