FileSets plugins are defined in the plugins root/plugins/filesets directory.
The FileSet configuration is an XML file named config.xml that must follow these rules:
- the root element is named fileSetConfig
- the XML document is valid against the XML Schema at plugins root/plugins/schemas
The file config.xml contains the following:
<fileSetConfig> <name>A short name for this aligner</name> <id>MY_FILESET_ID</id> <help>This message will appear on the web interface when users click on the question mark next to the aligner name.</help> <version>1.0</version> <files> <selector> <id>MY_ENTRY_NAME_1</id> <pattern>A SHELL PATTERN WITH WILDCARDS</pattern> </selector> <selector> <id>MY_ENTRY_NAME_2</id> <pattern>ANOTHER SHELL PATTERN WITH WILDCARDS</pattern> </selector> </files> <attributes> <attribute name="NAME_1"/> <attribute name="NAME_2"/> <attribute name="NAME_3"/> </attributes> </fileSetConfig>
The first part of the configuration reports the metadata common to all the plugins types.
Next, there are two main containers of information:
- files or directories: define the patterns that files belonging to the FileSet must match. For example, a Goby Alignment defines 3 file selectors with the following patterns: *.entries, *.index, *.header
- attributes: these are a set of arbitrary key-value pairs that can be associated to a FileSet instance generated from this configuration. For example, Organism=Homo Sapiens, Basename=A NAME