based on
FeatureUploadRequirements
Browser has "upload" button
User clicks on upload button, gets page with:
- track name field
- file input field (for choosing a file to upload from the local filesystem)
- URL field (for getting data from a URL)
- submit button
User clicks submit button, upload script on server:
- checks validity (possibly future)
- checks if user has uploaded features for this track before
- how does server know who the user is? do we, by any happy chance, have an authentication mechanism already in place? IH
if file is not valid, user gets an error page explaining the problem
- future: for common problems, provide automatic means for fixing them, if possible. The error page could have things like:
- a "generate unique IDs" button
- a "ignore problem rows" button
if user has uploaded features for this track before, user gets a page giving them the choice to:
- merge new data with existing data
- ID collisions--replace current record or barf?
- delete old data and replace with new data
- removes all data uploaded by this user for this track
- for all reference seqs, or just the ones in the current upload file?
Once problems are resolved and choices made, upload script:
interface between upload code and feature store:
overlaps
Title : overlaps
Usage : $overlaps = $s->overlaps($featSource, $user, $trackName)
Function: indicates whether or not uploaded features overlap
with previously uploaded features
Returns : true if the upload contains features on a reference
sequence and track that this user has previously uploaded to
Args : $featSource - feature source (e.g., GFF file)
$user - user performing the upload
$trackName - name of the track
Status : Public
storeFeatures
Title : storeFeatures
Usage : $s->storeFeatures($featSource, $user, $trackName, $merge)
Function: saves the features from the given source
Returns :
Args : $featSource - feature source (e.g., GFF file)
$user - user performing the upload
$trackName - name of the track
$merge - true to combine this upload with existing
features from this user/track, false to
delete existing features for this user/track
Status : Public
getFeatures
Title : getFeatures
Usage : @features = $s->getFeatures($user, $trackName, $reference)
Function: gets features for a particular user/track/refseq combination
Returns :
Args : $user - user who uploaded the features
$trackName - name of the track
$reference - reference sequence that features are on
Status : Public
getUploads
Title : getUploads
Usage : @uploads = $s->getUploads($reference)
Function: gets all of the uploads against the given refseq
Returns : a list of [$user, $trackName] pairs
Args : $reference - reference sequence that features are on
Status : Public
--
MitchSkinner - 22 Mar 2007

Copyright © 2008-2013 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback