<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module-description 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>
	<module-name>file</module-name>
	<component-description>
		<author>Niklas Nebel</author>
		<name>com.sun.star.sdbc.driver.calc.ODriver</name>
		<description>This library implements the database driver for spreadsheet (Calc) file formats.
</description>
		<loader-name>com.sun.star.loader.SharedLibrary</loader-name>
		<language>c++</language>
		<status value="final"/>
		<supported-service>com.sun.star.sdbc.Driver</supported-service>
		<supported-service>com.sun.star.sdbcx.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>cppu</runtime-module-dependency>
	<runtime-module-dependency>sal</runtime-module-dependency>
	<runtime-module-dependency>vos</runtime-module-dependency>
	<runtime-module-dependency>osl</runtime-module-dependency>
	<runtime-module-dependency>svtools-light1</runtime-module-dependency>
	<runtime-module-dependency>svtools</runtime-module-dependency>
	<runtime-module-dependency>ucbhelper</runtime-module-dependency>
	<runtime-module-dependency>dbtools</runtime-module-dependency>
	<runtime-module-dependency>unotools</runtime-module-dependency>
	<runtime-module-dependency>comphelper</runtime-module-dependency>
</module-description>
