<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configfile SYSTEM "plugin-configuration-file.dtd">

<!--
	Copyright (C) 2007 Jari Hakkinen

	This file is part of BASE - BioArray Software Environment.
	Available at http://base.thep.lu.se/

	BASE is free software; you can redistribute it and/or modify it
	under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 3 of the License, or
	(at your option) any later version.

	BASE is distributed in the hope that it will be useful, but WITHOUT
	ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
	or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
	License for more details.

	You should have received a copy of the GNU General Public License
	along with BASE. If not, see <http://www.gnu.org/licenses/>.
-->

<configfile>
  <configuration pluginClassName="net.sf.basedb.plugins.ReporterFlatFileImporter">
    <configname>Affymetrix probe set importer</configname>
    <description />
    <parameter>
      <name>maxDataColumns</name>
      <label>Max data columns</label>
      <description>The maximum number of columns for a line to be counted as a data line, or 0 to allow any number of columns.</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>dataHeaderRegexp</name>
      <label>Data header</label>
      <description>A regular expression that matches the header line just before the data begins. For example: Block\tRow\tColumn.*</description>
      <class>java.lang.String</class>
      <value>"Probe Set ID","GeneChip Array",.*</value>
    </parameter>
    <parameter>
      <name>trimQuotes</name>
      <label>Remove quotes</label>
      <description>If true quotes (" or ') around data value will be removed.</description>
      <class>java.lang.Boolean</class>
      <value>true</value>
    </parameter>
    <parameter>
      <name>dataSplitterRegexp</name>
      <label>Data splitter</label>
      <description>A regular expression that splits each data line into individual columns. For example, split on tabs: \t</description>
      <class>java.lang.String</class>
      <value>(?!"),(?=")</value>
    </parameter>
    <parameter>
      <name>scoreColumnMapping</name>
      <label>Score</label>
      <description>Mapping that picks the reporter's score in some context. This mapping is only used when importing to a reporter list.</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>nameColumnMapping</name>
      <label>Name</label>
      <description>Mapping that picks the reporter's name from the data columns. For example: \Name\</description>
      <class>java.lang.String</class>
      <value>\Probe Set ID\</value>
    </parameter>
    <parameter>
      <name>minDataColumns</name>
      <label>Min data columns</label>
      <description>The minimum number of columns for a line to be counted as a data line.</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>ignoreRegexp</name>
      <label>Ignore</label>
      <description>A regular expression that matches any line that should be ignored. For example, ignore lines starting with #: ^#.*</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>descriptionColumnMapping</name>
      <label>Description</label>
      <description>Mapping that picks the reporter's description from the data columns. For example: \Description\</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>dataFooterRegexp</name>
      <label>Data footer</label>
      <description>A regular expression that matches the first line of non-data after the data lines. For example: __END_OF_DATA__</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>reporterIdColumnMapping</name>
      <label>Reporter ID</label>
      <description>Mapping that picks the reporter's ID from the data columns. For example: \ID\</description>
      <class>java.lang.String</class>
      <value>\Probe Set ID\</value>
    </parameter>
    <parameter>
      <name>symbolColumnMapping</name>
      <label>Gene symbol</label>
      <description>Mapping that picks the reporter's gene symbol from the data columns. For example: \Gene symbol\</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>headerRegexp</name>
      <label>Header</label>
      <description>A regular expression that matches a header line and extracts the name and a value parts. For example, split on equal symbol: (.+)=(.*)</description>
      <class />
      <value />
    </parameter>
    <parameter>
      <name>extendedColumnMapping.unigeneId</name>
      <label>UniGene ID</label>
      <description>A unique identifier for a UniGene entry</description>
      <class>java.lang.String</class>
      <value>\UniGene ID\</value>
    </parameter>
    <parameter>
      <name>reporterType</name>
      <label>Reporter type</label>
      <description>The reporter type assigned to the imported reporters</description>
      <class />
      <value />
    </parameter>
  </configuration>
</configfile>

