<?xml version='1.0' encoding="UTF-8"?>
<!DOCTYPE COMPONENTDESCRIPTION PUBLIC "-//W3C//DTD HTML 3.2//EN" "module-description.dtd">
<!--***********************************************************
 *
 * 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.
 *
 ***********************************************************-->
<module-description xmlns:xlink="http://www.w3.org/1999/xlink">
	<module-name>	macab1	</module-name>
	<component-description>
		<Author>Omer bar-or</Author>
		<Name>com.sun.star.comp.sdbc.macab.Driver</Name>
		<description>This library implements the database driver for Mac OS address book formats.</description>
		<loader-name>com.sun.star.loader.SharedLibrary</loader-name>
		<language>c++</language>
		<status value="alpha"/>
		<supported-service>com.sun.star.sdbc.Driver</supported-service>
		<service-dependency>	...	</service-dependency>
	</component-description>
	<project-build-dependency>	cppuhelper	</project-build-dependency>
	<project-build-dependency>	cppu		</project-build-dependency>
	<project-build-dependency>	sal			</project-build-dependency>
	<project-build-dependency>	vos			</project-build-dependency>

	<runtime-module-dependency>	cppuhelper	</runtime-module-dependency>
	<runtime-module-dependency>	cppu1		</runtime-module-dependency>
	<runtime-module-dependency>	sal1		</runtime-module-dependency>
	<runtime-module-dependency>	vos			</runtime-module-dependency>

	<type>	com.sun.star.registry.XRegistryKey			</type>
	<type>	com.sun.star.util.XCancellable				</type>
	<type>	com.sun.star.util.XNumberFormatter			</type>
	<type>	com.sun.star.uno.TypeClass					</type>
	<type>	com.sun.star.uno.XWeak						</type>
	<type>	com.sun.star.uno.XAggregation				</type>
	<type>	com.sun.star.uno.XComponentContext			</type>
	<type>	com.sun.star.beans.PropertyAttribute		</type>
	<type>	com.sun.star.beans.XPropertyState			</type>
	<type>	com.sun.star.beans.XPropertySet				</type>
	<type>	com.sun.star.beans.PropertyValue			</type>
	<type>	com.sun.star.beans.XMultiPropertySet		</type>
	<type>	com.sun.star.beans.XFastPropertySet			</type>
	<type>	com.sun.star.lang.XSingleServiceFactory		</type>
	<type>	com.sun.star.lang.XTypeProvider				</type>
	<type>	com.sun.star.lang.XSingleComponentFactory	</type>
	<type>	com.sun.star.lang.EventObject				</type>
	<type>	com.sun.star.lang.XComponent				</type>
	<type>	com.sun.star.lang.IllegalArgumentException	</type>
	<type>	com.sun.star.lang.DisposedException			</type>
	<type>	com.sun.star.lang.XMultiServiceFactory		</type>
	<type>	com.sun.star.lang.XServiceInfo				</type>
	<type>	com.sun.star.lang.XUnoTunnel				</type>
	<type>	com.sun.star.java.XJavaThreadRegister_11	</type>
	<type>	com.sun.star.java.XJavaVM					</type>
	<type>	com.sun.star.sdbc.FetchDirection			</type>
	<type>	com.sun.star.sdbc.XConnection				</type>
	<type>	com.sun.star.sdbc.XStatement				</type>
	<type>	com.sun.star.sdbc.XResultSet				</type>
	<type>	com.sun.star.sdbc.XResultSetMetaDataSupplier</type>
	<type>	com.sun.star.sdbc.XColumnLocate				</type>
	<type>	com.sun.star.sdbc.XResultSetUpdate			</type>
	<type>	com.sun.star.sdbc.XWarningsSupplier			</type>
	<type>	com.sun.star.sdbc.XRowUpdate				</type>
	<type>	com.sun.star.sdbc.XMultipleResults			</type>
	<type>	com.sun.star.sdbc.XBatchExecution			</type>
	<type>	com.sun.star.sdbc.XPreparedBatchExecution	</type>
	<type>	com.sun.star.sdbc.XParameters				</type>
	<type>	com.sun.star.sdbc.XOutParameters			</type>
	<type>	com.sun.star.sdbc.DriverPropertyInfo		</type>
	<type>	com.sun.star.sdbc.SQLWarning				</type>
	<type>	com.sun.star.sdbc.XRow						</type>
	<type>	com.sun.star.sdbc.ColumnSearch				</type>
	<type>	com.sun.star.sdbc.ColumnValue				</type>
	<type>	com.sun.star.sdbc.DataType					</type>
	<type>	com.sun.star.sdbc.XDriver					</type>
	<type>	com.sun.star.sdbc.TransactionIsolation		</type>
	<type>	com.sun.star.sdbc.ResultSetType				</type>
	<type>	com.sun.star.sdbc.ResultSetConcurrency		</type>
	<type>	com.sun.star.sdbcx.XRowLocate				</type>
	<type>	com.sun.star.sdbcx.XDeleteRows				</type>
	<type>	com.sun.star.sdbcx.CompareBookmark			</type>
	<type>	com.sun.star.sdb.XColumnUpdate				</type>
	<type>	com.sun.star.sdb.XColumn					</type>
</module-description>
