BASE 3.20.0 Documentation

Last modified: 2024-10-31


Table of Contents

I. Overview
1. Why use BASE
1.1. Case I: The SCAN-B BASE installation at Department of Oncology, Lund University
1.2. Case II: The BASE installation at SCIBLU, Department of Oncology, Lund University
2. BASE features
2.1. Web interface
2.2. Information and annotation management
2.3. Data sharing and privacy
2.4. File and directory structure
2.5. Plugin and extension infrastructure
2.6. Batch upload and download of data
2.7. Supported array platforms and raw data formats
2.7.1. Vendor specific and custom printing array platforms
2.7.2. Available raw data types
2.8. Supported sequencing applications
2.9. Repository and standards
3. Resources
3.1. BASE project site
3.1.1. Download
3.1.2. Ticket system
3.1.3. Roadmap
3.1.4. Documentation
3.2. BASE plug-ins site
3.3. Demo server
3.4. Mailing lists
3.5. BASE-hacks
II. User documentation
4. Overview of user documentation
4.1. Working environment
4.2. Start working with BASE
4.2.1. Administrative tasks
4.2.2. User tasks
5. Using the web client
5.1. Introduction
5.1.1. Logging in
5.1.2. Forgotten password
5.1.3. 2-factor login
5.1.4. The home page
5.1.5. Using the menu bar
5.1.6. Getting help
5.2. Configuring your account
5.2.1. Contact information
5.2.2. Other information
5.2.3. Changing password
5.2.4. Preferences
5.3. Working with items
5.3.1. Create a new item
5.3.2. Edit an existing item
5.3.3. Delete items
5.3.4. Restore deleted items
5.3.5. Share items to other users
5.3.6. Change owner of items
5.4. Listing items
5.4.1. Ordering the list
5.4.2. Filtering the list
5.4.3. Configuring which columns to show
5.4.4. Parent and child item columns
5.4.5. Presets
5.5. Trashcan
5.5.1. Delete items permanently
5.5.2. View dependencies of a trashed item
5.6. Item overview
5.6.1. Validation options
5.6.2. Fixing validation failures
6. Projects and the permission system
6.1. The permission system
6.1.1. Permission levels
6.1.2. Getting access to an item
6.1.3. Plug-in permissions
6.2. Projects
6.2.1. Creating a project
6.2.2. The active project
6.2.3. How to give other users access to your project
6.2.4. Default items
6.2.5. Working with the items in the project
6.3. Permission templates
7. File management
7.1. File system
7.1.1. Disk space quota
7.2. Handling files
7.2.1. Upload a new file
7.2.2. External files
7.2.3. File servers
7.2.4. Edit a file
7.2.5. Move files
7.2.6. Viewing and downloading files
7.2.7. Directories
8. Jobs
9. Reporters
9.1. Reporter types
9.2. Reporters
9.2.1. Import/update reporter from files
9.2.2. Manual management of reporters
9.2.3. Deleting reporters
9.3. Reporter lists
9.3.1. Merging reporter lists
10. Annotations
10.1. Annotation Types
10.1.1. Properties
10.1.2. Options
10.1.3. Item types
10.1.4. Units
10.1.5. Categories
10.2. Annotating items
10.2.1. Project-specific annotations
10.2.2. Inheriting annotations from other items
10.2.3. Batch inherit annotations
10.2.4. Mass annotation import plug-in
11. Experimental platforms and data file types
11.1. Platforms
11.2. Platform variants
11.3. Data file types
11.4. Selecting files for an item
12. Item subtypes and categories
12.1. Item subtype properties
12.2. File types
12.3. Annotation type category properties
13. Protocols
13.1. Protocol parameters
14. Hardware and software
14.1. Hardware
14.2. Software
15. Array LIMS
15.1. Array designs
15.1.1. Properties
15.1.2. Importing features to an array design
15.2. Array batches
15.3. Array slides
15.3.1. Creating array slides
15.3.2. Multiple slides wizard
16. Biomaterial LIMS
16.1. Biosources
16.2. Samples
16.2.1. Create sample
16.2.2. Sample properties
16.2.3. Sample parents
16.3. Extracts
16.3.1. Create extract
16.3.2. Extract properties
16.3.3. Extract parents
16.4. Tags
16.5. Bioplates
16.5.1. Bioplate properties
16.5.2. Biowells
16.5.3. Bioplate types
16.5.4. Bioplate events
16.6. Physical bioassays
16.6.1. Create physical bioassays
16.6.2. Bioassay properties
16.6.3. Parent extracts
17. Item lists
17.1. Manage list members manually
17.2. Merging lists
17.3. Synchronization filters
18. Experiments and analysis
18.1. Derived bioassays
18.1.1. Create derived bioassays
18.1.2. Derived bioassay properties
18.2. Raw bioassays
18.2.1. Create raw bioassays
18.2.2. Raw bioassay properties
18.2.3. Import raw data
18.2.4. Raw data types
18.3. Experiments
18.3.1. Experiment properties
18.3.2. Experimental factors
18.4. Analysing data within BASE
18.4.1. Transformations and bioassay sets
18.4.2. Filtering data
18.4.3. Normalizing data
18.4.4. Other analysis plug-ins
18.4.5. The plot tool
18.4.6. Experiment explorer
19. Import of data
19.1. General import procedure
19.1.1. Select plug-in and file format
19.1.2. Specify plug-in parameters
19.1.3. Add the import job to the job queue
19.2. Batch import of data
19.2.1. File format
19.2.2. Running the item batch importer
19.2.3. Comments on the item batch importers
20. Export of data
20.1. Select plug-in and configuration
20.2. Specify plug-in parameters
20.3. The table exporter plug-in
III. Admin documentation
21. Installation and upgrade instructions
21.1. Upgrade instructions
21.2. Installation instructions
21.3. Installing job agents
21.3.1. BASE application server side setup
21.3.2. Database server setup
21.3.3. Job agent client setup
21.3.4. Configuring the job agent
21.4. Server configurations
21.4.1. Sending a broadcast message to logged in users
21.5. Migrating from MySQL to PostgreSQL
22. Plug-ins and extensions
22.1. Managing plug-ins and extensions
22.1.1. Automatic installation wizard
22.1.2. Manual plug-in registration
22.1.3. BASE version 1 plug-ins
22.1.4. Installing the X-JSP compiler
22.1.5. Disable/enable plug-ins and extensions
22.1.6. Plug-in permissions
22.2. Plug-in configurations
22.2.1. Configuring plug-in configurations
22.2.2. Importing and exporting plug-in configurations
22.2.3. The Test with file function
23. Account administration
23.1. Users administration
23.1.1. Edit user
23.1.2. Default group and role membership
23.2. Groups administration
23.2.1. Edit group
23.3. Roles administration
23.3.1. Pre-defined system roles
23.3.2. Edit role
23.4. Disk space/quota
23.4.1. Edit quota
23.4.2. Disk usage
IV. Developer documentation
24. Migrating code from BASE 2 to BASE 3
24.1. Compiling the code against BASE 3
24.2. Core API changes
24.3. Packaging your plug-in so that it installs in BASE 3
25. Developer overview of BASE
25.1. Fixed vs. dynamic database
25.2. Hibernate and the DbEngine
25.3. The Batch API
25.4. Data classes vs. item classes
25.5. The Query API
25.6. The Controller API
25.7. The Extensions API
25.8. Plug-ins
25.9. Client applications
26. Plug-in developer
26.1. How to organize your plug-in project
26.1.1. Using Ant
26.1.2. Make the plug-in compatible with the auto-installation wizard
26.2. The Plug-in API
26.2.1. The main plug-in interfaces
26.2.2. How the BASE core interacts with the plug-in when...
26.2.3. Abort a running a plug-in
26.2.4. Using custom JSP pages for parameter input
26.3. Import plug-ins
26.3.1. Autodetect file formats
26.3.2. The AbstractFlatFileImporter superclass
26.4. Export plug-ins
26.4.1. Immediate download of exported data
26.4.2. The AbstractExporterPlugin class
26.5. Analysis plug-ins
26.5.1. The AbstractAnalysisPlugin class
26.5.2. The AnalysisFilterPlugin interface
26.6. Other plug-ins
26.6.1. File unpacker plug-ins
26.6.2. File packer plug-ins
26.7. How BASE load plug-in classes
26.8. Example plug-ins (with download)
27. Extensions developer
27.1. Overview
27.1.1. Download code examples
27.1.2. Terminology
27.2. Hello world as an extension
27.2.1. The extensions.xml file
27.2.2. Extending multiple extension points with a single extension
27.3. Custom action factories
27.4. Custom images, JSP files, and other resources
27.4.1. Javascript and stylesheets
27.4.2. X-JSP files
27.5. Custom renderers and renderer factories
27.6. Extension points
27.6.1. Error handlers
27.7. Custom servlets
27.8. Extension points defined by BASE
27.8.1. Menu: extensions
27.8.2. Toolbars
27.8.3. Edit dialogs
27.8.4. Bioassay set: Tools
27.8.5. Bioassay set: Overview plots
27.8.6. Services
27.8.7. Service actions
27.8.8. Connection managers
27.8.9. Fileset validators
27.8.10. Logging managers
27.8.11. Item overview loaders
27.8.12. Item overview validation
27.8.13. Item overview information
27.8.14. Table list columns
27.8.15. Query filters
27.8.16. Login manager
27.8.17. Login form
27.8.18. Skins
27.8.19. Start page
28. Web services
29. The BASE API
29.1. The Public API of BASE
29.1.1. What is backwards compatibility?
29.2. The Data Layer API
29.2.1. Basic classes and interfaces
29.2.2. User authentication and access control
29.2.3. Reporters
29.2.4. Quota and disk usage
29.2.5. Client, session and settings
29.2.6. Files and directories
29.2.7. Experimental platforms and item subtypes
29.2.8. Parameters
29.2.9. Annotations
29.2.10. Protocols, hardware and software
29.2.11. Plug-ins, jobs and job agents
29.2.12. Biomaterial LIMS
29.2.13. Array LIMS - plates
29.2.14. Array LIMS - arrays
29.2.15. Bioassays and raw data
29.2.16. Experiments and analysis
29.2.17. Other classes
29.3. The Core API
29.3.1. Authentication and sessions
29.3.2. Access permissions
29.3.3. Data validation
29.3.4. Transaction handling
29.3.5. Create/read/write/delete operations
29.3.6. Batch operations
29.3.7. Quota
29.3.8. Plugin execution / job queue
29.3.9. Using files to store data
29.3.10. Sending signals (to plug-ins)
29.4. The Query API
29.5. The Dynamic API
29.6. The Extensions API
29.6.1. The core part
29.6.2. The web client part
29.7. Other useful classes and methods
30. Write documentation
30.1. User, administrator and developer documentation with Docbook
30.1.1. Documentation layout
30.1.2. Getting started
30.1.3. Docbook tags to use
30.2. Create UML diagrams with MagicDraw
30.2.1. Organisation
30.2.2. Classes
30.2.3. Diagrams
30.3. Javadoc
30.3.1. Writing Javadoc
31. Core developer reference
31.1. Publishing a new release
31.2. Subversion / building BASE
31.3. Coding rules and guidelines
31.3.1. Development process and other important procedures
31.3.2. General coding style guidelines
31.3.3. API changes and backwards compatibility
31.3.4. Data-layer rules
31.3.5. Item-class rules
31.3.6. Batch-class rules
31.3.7. Test-class rules
V. FAQ
32. Frequently Asked Questions with answers
32.1. Reporter related questions with answers
32.2. Array design related questions with answers
32.3. Biomaterial, Protocol, Hardware, Software related questions with answers
32.4. Data Files and Raw Data related questions with answers
32.5. Analysis related questions with answers
VI. Appendix
A. Core plug-ins shipped with BASE
A.1. Core analysis plug-ins
A.2. Core export plug-ins
A.3. Core import plug-ins
A.3.1. Core batch import plug-ins
A.4. Core intensity plug-ins
A.5. Uncategorized core plug-ins
B. base.config reference
C. extended-properties.xml reference
D. Platforms and raw-data-types.xml reference
D.1. Default platforms and variants installed with BASE
D.2. raw-data-types.xml reference
E. web.xml reference
E.1. Content security policy
F. jobagent.properties reference
G. jobagent.sh reference
H. Other configuration files
H.1. mysql-queries.xml and postgres-queries.xml
H.2. log4j2.xml
H.3. hibernate.cfg.xml
H.4. ehcache.xml
I. API changes that may affect backwards compatibility
I.1. BASE 3.15 release
I.2. BASE 3.14 release
I.3. BASE 3.11 release
I.4. BASE 3.10 release
I.5. BASE 3.9 release
I.6. BASE 3.8 release
I.7. BASE 3.6 release
I.8. BASE 3.5 release
I.9. BASE 3.4 release
I.10. BASE 3.3 release
I.11. BASE 3.2 release
I.12. BASE 3.1 release
I.13. BASE 3.0 release
I.14. All BASE 2.x releases
J. Things to consider when updating an existing BASE installation
J.1. BASE 3.20
J.2. BASE 3.19
J.3. BASE 3.18
J.4. BASE 3.17
J.5. BASE 3.16
J.6. BASE 3.15
J.7. BASE 3.14
J.8. BASE 3.11.1
J.9. BASE 3.10
J.10. BASE 3.9
J.11. BASE 3.8
J.12. BASE 3.6
J.13. BASE 3.5
J.14. BASE 3.4
J.15. BASE 3.3.3
J.16. BASE 3.3
J.17. BASE 3.2
J.18. BASE 3.0
J.19. All BASE 2.x releases
K. File formats
K.1. The BFS (BASE File Set) format
K.1.1. The basics of BFS
K.1.2. Using BFS for spotdata to and from external plug-ins
K.2. The BASEfile format
K.2.1. To be done