1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_sdbcx_DatabaseDefinition_idl__
28#define __com_sun_star_sdbcx_DatabaseDefinition_idl__
29
30 module com {  module sun {  module star {  module sdbcx {
31
32 published interface XTablesSupplier;
33 published interface XViewsSupplier;
34 published interface XUsersSupplier;
35 published interface XGroupsSupplier;
36
37
38/** could be used as an extension for performing data definition tasks on
39	databases, and to control the access rights on database objects.
40
41
42	<p>
43	It may be implemented by a database driver provider, to encapsulate the
44	complexity of data definition, and to give a common way for data definition as
45	the DDL of most DBMS's differs.
46	</p>
47	<p>
48	At least, the access to the tables of a database should be implemented.
49	The implementation of other known database objects like views is optional.
50	</p>
51	<p>
52	To control the access rights of users, there is the possibility to
53	implement objects like users and groups.
54	</p>
55 */
56published service DatabaseDefinition
57{
58	// gives access to the tables.
59	interface XTablesSupplier;
60
61	/** The implementation is optional.
62	 */
63	[optional] interface XViewsSupplier;
64
65	/** The implementation is optional.
66	 */
67	[optional] interface XUsersSupplier;
68
69	/** The implementation is optional.
70	 */
71	[optional] interface XGroupsSupplier;
72};
73
74//=============================================================================
75
76}; }; }; };
77
78/*===========================================================================
79===========================================================================*/
80#endif
81