UGENE Forum
https://forum.ugene.net/forum/YaBB.pl
General Category >> Feature Requests >> introducting perl script into ugene as element in workflow
https://forum.ugene.net/forum/YaBB.pl?num=1303723498

Message started by Poh on Apr 25th, 2011 at 4:24pm

Title: introducting perl script into ugene as element in workflow
Post by Poh on Apr 25th, 2011 at 4:24pm
Hi!

I have a bunch of script formation a file format to the other in perl.

I am interested to know how can I introduce the script into ugene as a ugene element in the workflow designer?

Is there a way to put in plugins in ugene?

Thanks.

Title: Re: introducting perl script into ugene as element in workflow
Post by Mikhail Fursov on Apr 25th, 2011 at 6:04pm
Hi!
To add scripting support for your favorite language in UGENE's Workflow Designer you need the following

1) Think about data model mapping: all algorithms in UGENE use common data model. So your script must output in some form (either file or stdout) data that your adapter in UGENE will be able to parse and create UGENE data models

2) Check "Create Script Object" toolbar action. It allows you creating custom script objects using QtScript (JavaScript).
Clone it to serve your needs.

Hope it helps.




Title: Re: introducting perl script into ugene as element in workflow
Post by Poh on Apr 27th, 2011 at 3:40pm
Is there a simple hello world example on it?

I am looking at just try out a few script with a define input file and run it, output text file and that's it.

I am not sure of the common data model. Still looking.

Thanks.


Title: Re: introducting perl script into ugene as element in workflow
Post by Poh on Apr 28th, 2011 at 4:25pm
I manage to do a read and write file. It looks working, but not yet with scripting....

Any pointers if I am to add a component in between read write to convert character from xxx to yyy or something like that?

Thanks.
ugeneReadWrite.JPG (170 KB | )

Title: Re: introducting perl script into ugene as element in workflow
Post by Poh on Apr 28th, 2011 at 5:26pm
ok I tried. but cannot find where can I put in the code in parameter to call the perl scripts..

Any pointers?
ugenescripting.JPG (162 KB | )

Title: Re: introducting perl script into ugene as element in workflow
Post by Mikhail Fursov on Apr 28th, 2011 at 6:20pm

Poh wrote on Apr 27th, 2011 at 3:40pm:
Is there a simple hello world example on it?

I am looking at just try out a few script with a define input file and run it, output text file and that's it.

I am not sure of the common data model. Still looking.

Thanks.


There is no simple or standard way to integrate script engine into the application. The example with QT script actually uses QScriptEngine  from QT that is different from running an independent standalone app.
May be we should think and introduce a framework here to simplify use other languages with UGENE: https://ugene.unipro.ru/tracker/browse/UGENE-253

Common data model is very simple. Start with DNASequence. To use it in the simplest way the only you need is a) name b) sequence c) alphabet
You need to create a wrapper for your script to parse it results and create DNASequence object.

Title: Re: introducting perl script into ugene as element in workflow
Post by Poh on Apr 29th, 2011 at 8:59am
ok.

Sequencing files are one of the common start point for sequence analysis.

However, many highthroughput data are not sequence based. For example, genotyping data from microarray.

It exist in the form like this.
organism genotype1 genotype2 genotype3
ABC        11             00            10
BCA        10             11            10

Then the data are needed to be converted to (usually done with the script)

INPUT   ABC  BCA
G1        AA    AB
G2        BB    AA
G3        AB    AB

Enabling a much more generic interface to enable end users to create element to process data, empowering end user to wrap in scripts they found/write and put it as element into ugene would be a very powerful feature. Plus the ability to run it local and grid would be well leveraged.

Besides that helps makes ugene a much more flexible tool if users started to share their pipeline via uwl. That can help alot in the prototyping effort before a much more polished pipeline integrated to the mainstream of ugene capabilities. Enabling that too will lighten the load of ugene developers as users around the world shares.

UGENE Forum » Powered by YaBB 2.5 AE!
YaBB Forum Software © 2000-2010. All Rights Reserved.