source: trunk/doc/historical/specifications/core/importexport.html @ 4509

Last change on this file since 4509 was 4509, checked in by Jari Häkkinen, 15 years ago

Addresses #1106. Missed to change reference wherefrom retrive GPLv3 license text. And some other changes.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id Date
File size: 3.2 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<!--
3  $Id: importexport.html 4509 2008-09-11 20:01:44Z jari $
4
5  Copyright (C) 2005 Jari Hakkinen, Nicklas Nordborg
6  Copyright (C) 2006 Jari Hakkinen
7
8  This file is part of BASE - BioArray Software Environment.
9  Available at http://base.thep.lu.se/
10
11  BASE is free software; you can redistribute it and/or
12  modify it under the terms of the GNU General Public License
13  as published by the Free Software Foundation; either version 3
14  of the License, or (at your option) any later version.
15
16  BASE is distributed in the hope that it will be useful,
17  but WITHOUT ANY WARRANTY; without even the implied warranty of
18  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19  GNU General Public License for more details.
20
21  You should have received a copy of the GNU General Public License
22  along with BASE. If not, see <http://www.gnu.org/licenses/>.
23-->
24<html>
25  <head>
26    <title>BASE - Core specification - Data import and export</title>
27  <link rel=stylesheet type="text/css" href="../../styles.css">
28  </head>
29<body>
30
31<div class="navigation">
32  <a href="../../index.html">BASE</a>
33  <img src="../../next.gif">
34  <a href="index.html">Core specification</a>
35  <img src="../../next.gif">
36  Data import and export
37</div>
38
39  <h1>Data import and export</h1>
40
41  <div class="abstract">
42    <p>
43    This document covers details for data import and export and how it can be
44    extended to support more file formats by the use of plugins.
45    </p>
46
47    <b>Contents</b><br>
48    <ol>
49    <li><a href="#import">Import</a>
50    <li><a href="#export">Export</a>
51    </ol>
52
53    <p class="authors">
54    <b>Last updated:</b> $Date: 2008-09-11 20:01:44 +0000 (Thu, 11 Sep 2008) $
55    </p>
56  </div>
57
58  <a name="import">
59  <h2>1. Import</h2>
60  </a>
61
62  <ol>
63  <li>The parsing of files for importing data is handled entirely by plugins.
64
65  <li>The core will include a plugin for parsing tab-separated files.
66
67  <li>Insertion of parsed data into the database can be done
68    in two ways:
69    <ol>
70    <li>The plugin uses the core API to insert the data
71    <li>The plugin returns the information to the core which inserts the
72      data
73    </ol>
74    <div class="note">[NOTE]
75    The first method is the most flexible and allows a plugin to parse files
76    with more than one type of items. The second method requires that the core
77    knows what types of items are in the file. An exemple of the first type is
78    a plugin that parses an XML file containing structured biomaterial data,
79    ie. samples, extracts and labeled extracts. All file formats that are used
80    in BASE 1.x can be implemented as a type 2 plugin.
81    </div>
82
83  <li>A plugin should be able to check if a file is parsable by that plugin.
84    For example, a plugin that expects XML data should not be used on
85    tab-separated data. The plugin may also check headers, the number of
86    columns, and other information appearing in the file.
87
88  <li>
89
90
91  </ol>
92
93
94  <a name="export">
95  <h2>2. Export</h2>
96  </a>
97
98  <ol>
99  <li>Exporting data is handled entirely by plugins.
100
101  <li>A plugin may need input parameters from the user to
102    select options for the export.
103
104  <li>The type and acceptable values of the input parameters must
105    be defined in a standardised way to allow various client applications
106    to display a form asking for values.
107
108  <li>The plugin should use the core API to read the data.
109
110  <li>
111
112  </ol>
113
114
115</body>
116</html>
117
Note: See TracBrowser for help on using the repository browser.