Concept Profile Generation Pipeline
Requirements:
Have MySQL installed with a database called mydb or please create one. Have mysql-connector-java-5.1.28-bin.jar or better placed in the local JAR files.
Have Peregrine indexer installed locally and give it the correct path in the component named "Indexer_tool" Download the Peregrine SKOS CLI from: https://trac.nbic.nl/biosemantics_bet_dev/downloads Install LVG2013Lite. See: https://trac.nbic.nl/data-mining/wiki/Using%20plain%20jar%20files Copy properties file from production.properties Change the normalizer.lvg.properties and normalizer.lvg.binaryCache properties to point to the LVG installation path.
If using a Windows machine please install cygwin. Set cygwin in the $PATH of the environment variabale. Go to taverna File --> preferences --> Tool invocation --> Edit defaul local --> write in Shell: C:\Windows\system32\cmd.exe /c and save that.
Have JAVA_HOME C:\Program Files\jdk 1.7.0 in environment variabale.
Preview
Run
Run this Workflow in the Taverna Workbench...
Option 1:
Copy and paste this link into File > 'Open workflow location...'
http://www.myexperiment.org/workflows/4272/download?version=2
[ More Info ]
Taverna is available from http://taverna.sourceforge.net/
If you are having problems downloading it in Taverna, you may need to provide your username and password in the URL so that Taverna can access the Workflow:
Replace http:// in the link above with http://yourusername:yourpassword@
Workflow Components
Amrish Mahes |
None
Requirements: Have MySQL installed with a database called mydb or please create one. Have mysql-connector-java-5.1.28-bin.jar or better placed in the local JAR files. Have Peregrine indexer installed locally and give it the correct path in the component named "Indexer_tool" Download the Peregrine SKOS CLI from: https://trac.nbic.nl/biosemantics_bet_dev/downloads Install LVG2013Lite. See: https://trac.nbic.nl/data-mining/wiki/Using%20plain%20jar%20files Copy properties file from production.properties Change the normalizer.lvg.properties and normalizer.lvg.binaryCache properties to point to the LVG installation path. If using a Windows machine please install cygwin. Set cygwin in the $PATH of the environment variabale. Go to taverna File --> preferences --> Tool invocation --> Edit defaul local --> write in Shell: C:\Windows\system32\cmd.exe /c and save that. Have JAVA_HOME C:\Program Files\jdk 1.7.0 in environment variabale. |
mysql-connector-java-5.1.28-bin.jar |
Name | Description |
---|---|
Ontology_input | A Skos formated dictionary/thesaurus of predefined concepts. |
User_password | Input your sql password to acces as root. |
abstract_input_depth2 | Give a list with sublist. Each sublist consist out of two elements. Such as [ [ Document_URI, Abstract_URI] ]. For an example please load in the file named: Input_value_for_test_upload_CPGP. Which can be found under the files tab on MyExperiment. |
Driver_value | The driver needed for all SQL query to run. |
usr_id | The user ID which is in this case root. |
url_value |
Name | Type | Description |
---|---|---|
Beanshell_generate_SQL_statement_Get_destinct_concept | beanshell |
A Beanshell script that retrieves every concept. Scriptout1 = "SELECT DISTINCT concept_uri FROM mydb."+table_name+"_occurence;"; //occurence_table |
Execute_SQL_Query | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import javax.sql.rowset.WebRowSet; import com.sun.rowset.WebRowSetImpl; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } boolean provideXmlBoolean = ((provideXml != void) && (provideXml != null) && Boolean.valueOf(provideXml)); if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; ResultSet rs = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramSize = params.size(); for (int i = 0; i < paramSize; i++) { ps.setObject(i + 1, params.get(i)); } rs = ps.executeQuery(); if (provideXmlBoolean) { WebRowSet webrs = new WebRowSetImpl(); StringWriter sw = new StringWriter(); webrs.writeXml(rs, sw); xmlresults = sw.toString(); } else { xmlresults = ""; } try { rs.beforeFirst(); } catch (SQLException e) { // redo the query rs = ps.executeQuery(); } ResultSetMetaData rsmd = rs.getMetaData(); int numCols = rsmd.getColumnCount(); resultList = new ArrayList(); // put the results into the results list. while (rs.next()) { List row = new ArrayList(numCols); for (int i = 0; i < numCols; i++) { String str = rs.getString(i + 1); row.add(str == null ? "null" : str); } resultList.add(row); } } finally { if (rs != null) { rs.close(); } if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Flatten_List | localworker |
Scriptflatten(inputs, outputs, depth) { for (i = inputs.iterator(); i.hasNext();) { element = i.next(); if (element instanceof Collection && depth > 0) { flatten(element, outputs, depth - 1); } else { outputs.add(element); } } } outputlist = new ArrayList(); flatten(inputlist, outputlist, 1); |
Beanshell_make_concept_pairs | beanshell |
A Beanshell script that gets as input a list of concepts to create concept pairs. Scriptconcept_pair = concept_A +","+ concept_B; |
Flatten_List_2 | localworker |
Scriptflatten(inputs, outputs, depth) { for (i = inputs.iterator(); i.hasNext();) { element = i.next(); if (element instanceof Collection && depth > 0) { flatten(element, outputs, depth - 1); } else { outputs.add(element); } } } outputlist = new ArrayList(); flatten(inputlist, outputlist, 1); |
Beanshell_SQL_generate_contingency_table | beanshell |
A Beanshell script that generates a SQL statement to retrieve the amount two concepts co-occur, concept A only occurs
and not concept B, concept B occurs and not concept A and neither concepts occur in literature. ScriptList concept_pair = Arrays.asList(concept_pairs.split(",")); out1="SELECT count(*) AS total FROM " + "(SELECT doc_uri,count(DISTINCT concept_uri) AS count_conc FROM mydb."+table_name+"_occurence " + //occurence_table "WHERE concept_uri IN ('"+concept_pair.get(0)+"','"+concept_pair.get(1)+"') " + "GROUP BY doc_uri " + "HAVING count_conc >=2 ) " + "AS amount_of_concept_co_occurence " + "UNION ALL " + "SELECT count(*) AS total FROM " + "(SELECT concept_uri,doc_uri FROM mydb."+table_name+"_occurence " + //occurence_table "WHERE concept_uri IN ('"+concept_pair.get(0)+"')) " + "AS only_concept_A " + "UNION ALL " + "SELECT count(*) AS total FROM " + "(SELECT concept_uri,doc_uri FROM mydb."+table_name+"_occurence " + //occurence_table "WHERE concept_uri IN ('"+concept_pair.get(1)+"')) " + "AS only_concept_B " + "UNION ALL " + "SELECT count(*) AS total FROM " + "(SELECT doc_uri,count(DISTINCT concept_uri) AS count_conc FROM mydb."+table_name+"_occurence " + //occurence_table "WHERE concept_uri NOT IN ('"+concept_pair.get(0)+"','"+concept_pair.get(1)+"') " + "GROUP BY doc_uri) " + "AS non_conceptA_B; "; |
Execute_SQL_Query_2 | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import javax.sql.rowset.WebRowSet; import com.sun.rowset.WebRowSetImpl; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } boolean provideXmlBoolean = ((provideXml != void) && (provideXml != null) && Boolean.valueOf(provideXml)); if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; ResultSet rs = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramSize = params.size(); for (int i = 0; i < paramSize; i++) { ps.setObject(i + 1, params.get(i)); } rs = ps.executeQuery(); if (provideXmlBoolean) { WebRowSet webrs = new WebRowSetImpl(); StringWriter sw = new StringWriter(); webrs.writeXml(rs, sw); xmlresults = sw.toString(); } else { xmlresults = ""; } try { rs.beforeFirst(); } catch (SQLException e) { // redo the query rs = ps.executeQuery(); } ResultSetMetaData rsmd = rs.getMetaData(); int numCols = rsmd.getColumnCount(); resultList = new ArrayList(); // put the results into the results list. while (rs.next()) { List row = new ArrayList(numCols); for (int i = 0; i < numCols; i++) { String str = rs.getString(i + 1); row.add(str == null ? "null" : str); } resultList.add(row); } } finally { if (rs != null) { rs.close(); } if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Flatten_List_3 | localworker |
Scriptflatten(inputs, outputs, depth) { for (i = inputs.iterator(); i.hasNext();) { element = i.next(); if (element instanceof Collection && depth > 0) { flatten(element, outputs, depth - 1); } else { outputs.add(element); } } } outputlist = new ArrayList(); flatten(inputlist, outputlist, 1); |
Beanshell_correct_contincengy_table | beanshell |
A Beanshell script that corrects the output SQL retrieved contincengy table. Scriptint co_occure_ab = Integer.parseInt(contingency_values.get(0)); int count_concept_a = Integer.parseInt(contingency_values.get(1)); int count_concept_b = Integer.parseInt(contingency_values.get(2)); int count_non_ab = Integer.parseInt(contingency_values.get(3)); all_concept_a = count_concept_a - co_occure_ab; all_concept_b = count_concept_b - co_occure_ab; List correct_contingencytable = new ArrayList(); correct_contingencytable.add(co_occure_ab); correct_contingencytable.add(all_concept_a); correct_contingencytable.add(all_concept_b); correct_contingencytable.add(count_non_ab); corrected_contingency_values = correct_contingencytable |
Beanshell_calculate_Uncertainty_Coefficient | beanshell |
A Beanshell script that calculates the Uncertainty coefficient based on the work of Herman van Haagen. Scriptdouble M11 = Double.parseDouble(corrected_contingency_values.get(0)); // co-occure A B double M01 = Double.parseDouble(corrected_contingency_values.get(1)); // Only concept A double M10 = Double.parseDouble(corrected_contingency_values.get(2)); // Only concept B double M00 = Double.parseDouble(corrected_contingency_values.get(3)); // None A or B double N = M11+M01+10+M00; double Pxy = M11/N; double Pxnoty = M01/N; double Pnotxy = M10/N; double Pnotxnoty = M00/N; double Px = (M11+M01)/N; double Py = (M11+M10)/N; double Pnotx = (M10+M00)/N; double Pnoty = (M01+M00)/N; double Hx = -Px*Math.log(Px)-Pnotx*Math.log(Pnotx); double Hy = -Py*Math.log(Py)-Pnoty*Math.log(Pnoty); double miA = Pxy*Math.log(Pxy/(Px*Py)); if (Double.isNaN(miA)) miA = 0.0; double miB = Pxnoty*Math.log(Pxnoty/(Px*Pnoty)); if (Double.isNaN(miB)) miB = 0.0; double miC = Pnotxy*Math.log(Pnotxy/(Pnotx*Py)); if (Double.isNaN(miC)) miC = 0.0; double miD = Pnotxnoty*Math.log(Pnotxnoty/(Pnotx*Pnoty)); if (Double.isNaN(miD)) miD = 0.0; double mi = miA+miB+miC+miD; double uc = (2*mi)/(Hx+Hy); UC_value = uc; |
Beanshell_SQL_generate_table_UC | beanshell |
A Beanshell script that generates a table for the uncertainty coefficient values. ScriptString output = "Create table mydb."+time_stamp+"_UC(concept_profile_id INT NOT NULL AUTO_INCREMENT, concept_alpha VARCHAR(200) NULL, concept_beta VARCHAR(200) NULL, Uncertainty_coefficient DOUBLE NULL, PRIMARY KEY (concept_profile_id));" |
Execute_SQL_Update_CREATE_TABLE_UC | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_SQL_INSERT_UC_values_INTO_table | beanshell |
A Beanshell script that generates a SQL statement to insert the calculated values of uncertainty coefficient per
concept pair into the table. ScriptList concept_pair = Arrays.asList(concept_pairs.split(",")); concept_alpha = concept_pair.get(0); concept_beta = concept_pair.get(1); output_SQL = "INSERT INTO mydb."+timestamp+"_uc (concept_alpha, concept_beta, Uncertainty_coefficient) VALUES ('"+concept_alpha+"', '"+concept_beta+"', '"+UC_value+"');"; |
Execute_SQL_Update_INSERT_INTO_UC_table | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_SQL_generate_Get_Inner_Product | beanshell |
A Beanshell script that generates a SQL statement to retrieve the inner product between two concept profiles. ScriptList concept_pair = Arrays.asList(concept_pairs.split(",")); concept_alpha = concept_pair.get(0); concept_beta = concept_pair.get(1); out1 = "SELECT SUM(cpTable1.Uncertainty_coefficient*cpTable2.Uncertainty_coefficient) FROM mydb."+timestamp+"_uc AS cpTable1, mydb."+timestamp+"_uc AS cpTable2 WHERE cpTable1.concept_alpha = '"+concept_alpha+"' AND cpTable2.concept_alpha = '"+concept_beta+"' AND cpTable1.concept_beta=cpTable2.concept_beta;"; |
Beanshell_SQL_create_table_co_occurence | beanshell |
ScriptString out1 = "CREATE TABLE mydb."+timestamp+"_co_occurence (concept_id INT NOT NULL AUTO_INCREMENT, concept1 VARCHAR(200) NULL, concept2 VARCHAR(200) NULL, concept_co_occurence VARCHAR(200) NULL,PRIMARY KEY (concept_id));"; |
Execute_SQL_Update_CREATE_TABLE_Co_Occurence | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_SQL_insert_into_co_occurence_table | beanshell |
A Beanshell script that generates SQL statement to insert into the co-occurence table the amount two given concepts co-occur together in literature. ScriptList concept_pair = Arrays.asList(concept_pairs.split(",")); concept_alpha = concept_pair.get(0); concept_beta = concept_pair.get(1); String co_occurence = contingency_values.get(0); String out1 = "INSERT INTO mydb."+timestamp+"_co_occurence (concept1, concept2, concept_co_occurence)VALUES('"+concept_alpha+"','"+concept_beta+"','"+co_occurence+"');"; |
Execute_SQL_Update_INSERT_INTO_Co_occurence_table | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_generate_SQL_table_inner_product | beanshell |
ScriptString out1 = "CREATE TABLE mydb."+timestamp+"_inner_product ( concept_profile_id INT NOT NULL AUTO_INCREMENT, concept_1 VARCHAR(200) NULL, concept_2 VARCHAR(200) NULL, Inner_product DOUBLE NULL, PRIMARY KEY (concept_profile_id));"; |
Execute_SQL_Update_CREATE_TABLE_Inner_Product | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Execute_SQL_Query_Get_Inner_Product | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import javax.sql.rowset.WebRowSet; import com.sun.rowset.WebRowSetImpl; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } boolean provideXmlBoolean = ((provideXml != void) && (provideXml != null) && Boolean.valueOf(provideXml)); if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; ResultSet rs = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramSize = params.size(); for (int i = 0; i < paramSize; i++) { ps.setObject(i + 1, params.get(i)); } rs = ps.executeQuery(); if (provideXmlBoolean) { WebRowSet webrs = new WebRowSetImpl(); StringWriter sw = new StringWriter(); webrs.writeXml(rs, sw); xmlresults = sw.toString(); } else { xmlresults = ""; } try { rs.beforeFirst(); } catch (SQLException e) { // redo the query rs = ps.executeQuery(); } ResultSetMetaData rsmd = rs.getMetaData(); int numCols = rsmd.getColumnCount(); resultList = new ArrayList(); // put the results into the results list. while (rs.next()) { List row = new ArrayList(numCols); for (int i = 0; i < numCols; i++) { String str = rs.getString(i + 1); row.add(str == null ? "null" : str); } resultList.add(row); } } finally { if (rs != null) { rs.close(); } if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Flatten_List_4 | localworker |
Scriptflatten(inputs, outputs, depth) { for (i = inputs.iterator(); i.hasNext();) { element = i.next(); if (element instanceof Collection && depth > 0) { flatten(element, outputs, depth - 1); } else { outputs.add(element); } } } outputlist = new ArrayList(); flatten(inputlist, outputlist, 1); |
Flatten_List_5 | localworker |
Scriptflatten(inputs, outputs, depth) { for (i = inputs.iterator(); i.hasNext();) { element = i.next(); if (element instanceof Collection && depth > 0) { flatten(element, outputs, depth - 1); } else { outputs.add(element); } } } outputlist = new ArrayList(); flatten(inputlist, outputlist, 1); |
Beanshell_SQL_generate_INSERT_INTO_Inner_Product_table | beanshell |
A Beanshell script that generates a SQL statement to insert the inner product values calculated of two concept profiles into the inner product table. ScriptList concept_pair = Arrays.asList(concept_pairs.split(",")); concept_1 = concept_pair.get(0); concept_2 = concept_pair.get(1); String out1 = "INSERT INTO mydb."+timestamp+"_inner_product ( concept_1,concept_2,Inner_product) VALUES('"+concept_1+"','"+concept_2+"','"+inner_product_value+"');" |
Execute_SQL_Update_INSERT_INTO_Inner_Product_table | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_SQL_statement_get_last_table_data_input | beanshell |
A Beanshell that generates SQL statements to retrieve the inner product of two concept profiles, the co-occurence of the concepts and the uncertainty coefficient. ScriptString out1 = "SELECT distinct inner_product.concept_1, " + "inner_product.concept_2, " + "inner_product.Inner_product, " + "uc.Uncertainty_coefficient, " + "Co_occurence_table.concept_co_occurence " + "FROM mydb."+timestamp+"_inner_product AS inner_product, " + "mydb."+timestamp+"_uc AS uc, " + "mydb."+timestamp+"_co_occurence AS Co_occurence_table " + "WHERE inner_product.concept_profile_id = uc.concept_profile_id " + "AND " + "inner_product.concept_profile_id = Co_occurence_table.concept_id; "; |
Execute_SQL_Query_Get_data_for_big_table | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import javax.sql.rowset.WebRowSet; import com.sun.rowset.WebRowSetImpl; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } boolean provideXmlBoolean = ((provideXml != void) && (provideXml != null) && Boolean.valueOf(provideXml)); if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; ResultSet rs = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramSize = params.size(); for (int i = 0; i < paramSize; i++) { ps.setObject(i + 1, params.get(i)); } rs = ps.executeQuery(); if (provideXmlBoolean) { WebRowSet webrs = new WebRowSetImpl(); StringWriter sw = new StringWriter(); webrs.writeXml(rs, sw); xmlresults = sw.toString(); } else { xmlresults = ""; } try { rs.beforeFirst(); } catch (SQLException e) { // redo the query rs = ps.executeQuery(); } ResultSetMetaData rsmd = rs.getMetaData(); int numCols = rsmd.getColumnCount(); resultList = new ArrayList(); // put the results into the results list. while (rs.next()) { List row = new ArrayList(numCols); for (int i = 0; i < numCols; i++) { String str = rs.getString(i + 1); row.add(str == null ? "null" : str); } resultList.add(row); } } finally { if (rs != null) { rs.close(); } if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_SQL_CREATE_last_big_table | beanshell |
ScriptString out1 = "CREATE TABLE mydb."+timestamp+"_big_table ( concept_profile_id INT NOT NULL AUTO_INCREMENT, concept_profile_A VARCHAR(255) NULL, concept_profile_B VARCHAR(255) NULL, Inner_product DOUBLE NULL, Uncertainty_coefficient DOUBLE NULL, Co_occurence VARCHAR(255) NULL, PRIMARY KEY (concept_profile_id));"; |
Beanshell_SQL_Generate_INSERT_INTO_big_table | beanshell |
A Beanshell script that generates SQL statements to insert two concepts and their given co-occurence, uncertainty coefficientcy and inner product values into the table. Scriptconcept_profile_A = in1.get(0); concept_profile_B = in1.get(1); inner_product = in1.get(2); uncertainty_coefficient = in1.get(3); co_occurence = in1.get(4); String out1 = "INSERT INTO mydb."+timestamp+"_big_table (concept_profile_A, concept_profile_B, Inner_product, Uncertainty_coefficient, Co_occurence) " + "VALUES ('"+concept_profile_A+"','"+concept_profile_B+"','"+inner_product+"','"+uncertainty_coefficient+"','"+co_occurence+"');"; |
Execute_SQL_Update_CREATE_TABLE_big_data | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Execute_SQL_Update_INSERT_INTO_big_table | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
regex_value | stringconstant |
Value[\n] |
Split_string_into_string_list_by_regular_expression | localworker |
Uses Regex to split string into string list. ScriptList split = new ArrayList(); if (!string.equals("")) { String regexString = ","; if (regex != void) { regexString = regex; } String[] result = string.split(regexString); for (int i = 0; i < result.length; i++) { split.add(result[i]); } } |
Indexer_tool | externaltool | Uses a jar peregrine program to index which concept occurs in what document. Change the commands to : java -Dperegrine.config.location=your/path/to/peregrine/production.properties -jar path/to/peregrine-skos-cli.jar ontology abstract_content out1 When using a Windows machine: Go to Location tab select radiobutton "Select an explicit location" and default local then save settings by clicking apply. |
Execute_SQL_Update_INSERT_INTO_occurence_table | localworker |
Executes the SQL statement generated by the Beanshell script: "Sql_beanshell_query_generator_Concept_occ_Doc" which insert the concept, occurence and document URI into the table. Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Execute_SQL_Update_CREATE_TABLE_Occurence | localworker |
Scriptimport java.sql.Driver; import java.sql.DriverManager; import java.sql.Connection; import java.sql.PreparedStatement; if ((driver == void) || (driver == null) || driver.equals("")) { throw new RuntimeException("The driver must be specified"); } if ((url == void) || (url == null) || url.equals("")) { throw new RuntimeException("The url must be specified"); } if ((params == void) || (params == null)) { params = new ArrayList(); } if ((sql == void) || (sql == null) || sql.equals("")) { throw new RuntimeException("The sql must be specified"); } Class c = Thread.currentThread().getContextClassLoader().loadClass(driver); if (c == null) { throw new RuntimeException("Class " + driver + " not found"); } Driver d = c.newInstance(); if (d == null) { throw new RuntimeException("Could not create instance of driver"); } Properties p = new Properties(); if ((userid == void) || (userid == null)) { userid = ""; } p.setProperty("user", userid); if ((password == void) || (password == null)) { password = ""; } p.setProperty("password", password); Connection con = null; PreparedStatement ps = null; try { con = d.connect(url, p); ps = con.prepareStatement(sql); int paramsSize = params.size(); for (int i = 0; i < paramsSize; i++) { ps.setObject(i + 1, params.get(i)); } ps.executeUpdate(); resultList = "update successful"; } finally { if (ps != null) { ps.close(); } if (con != null) { con.close(); } } |
Beanshell_remove_dot_and_put_correct_doc_uri_in_con_occ_doc | beanshell |
A Beanshell script that replaces the temp created Taverna file with the correct Document URI. ScriptList con_occ_doc = Arrays.asList(concept_occurence_document.split("\\s+")); concept = con_occ_doc.get(0); occurs = con_occ_doc.get(1); doc = con_occ_doc.get(2); element = doc.substring(doc.indexOf('.')+1,doc.lastIndexOf('.')); int element = Integer.parseInt(element); correct_doc_uri = doc_uri.get(element); String out1 = concept+" "+occurs+" "+correct_doc_uri; |
Beanshell_get_timestamp | beanshell |
A Beanshell script which retreives the time the program started.
As in year, month, day, hour, minutes and seconds in military time. Scriptimport java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Calender; String timeStamp = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss").format(new Date()); /* Retrieve the year, month, day, hour, minutes and seconds in military time at which the program started */ |
Beanshell_generate_SQL_occurence_concept_doc_table | beanshell |
A Beanshell script which generates a sql statement to CREATE a TABLE.
TABLE name is the input of the timestamp.
The table consists out of 4 columns: concept_occ_doc_id, concept_uri, occurence_uri and doc_uri.
Where as concept_occ_doc_id is the PRIMARY KEY and AUTOINCREMENTED.
Every other column has a VARCHAR(200)
ScriptString Table_sql = "CREATE TABLE mydb."+timeStamp+"_occurence ( concept_doc_id INT NOT NULL AUTO_INCREMENT, concept_uri VARCHAR(200) NULL, doc_uri VARCHAR(200) NULL, PRIMARY KEY (concept_doc_id));" /* generate sql statement which create a table with a timestamp as table name*/ |
Beanshell_extract_uri_doc_and_abstract | beanshell |
A Beanshell script which loops through the input to seperate the Document URIs and Abstract URIs. Scriptdoc_uri= Input.get(0); abstracts = Input.get(1); |
Beanshell_SQL_query_generator_Concept_Doc_occurence | beanshell |
A Beanshell script that generates a Sql statement to INSERT
the concept URI, occurence URI and document URI in the table named after the timestamp the workflow started.
It uses a database called mydb. It is needed to have a database called mydb. Script/* Generate sql statement which inserts the concept URI and document URI in the table*/ List con_occ_doc = Arrays.asList(concept_occurence_document.split("\\s+")); out1 = "INSERT INTO mydb."+table_name+"_occurence (concept_uri,doc_uri)VALUES("+"'"+con_occ_doc.get(0)+"','"+con_occ_doc.get(2)+"');"; |
Name | Description | Inputs | Outputs |
---|---|---|---|
Beanshell_generate_SQL_statement_Get_destinct_concept | A Beanshell script that retrieves every concept. | table_name | out1 |
Beanshell_make_concept_pairs | A Beanshell script that gets as input a list of concepts to create concept pairs. |
concept_B concept_A |
concept_pair |
Beanshell_SQL_generate_contingency_table | A Beanshell script that generates a SQL statement to retrieve the amount two concepts co-occur, concept A only occurs and not concept B, concept B occurs and not concept A and neither concepts occur in literature. |
concept_pairs table_name |
out1 |
Beanshell_correct_contincengy_table | A Beanshell script that corrects the output SQL retrieved contincengy table. | contingency_values | corrected_contingency_values |
Beanshell_calculate_Uncertainty_Coefficient | A Beanshell script that calculates the Uncertainty coefficient based on the work of Herman van Haagen. | corrected_contingency_values | UC_value |
Beanshell_SQL_generate_table_UC | A Beanshell script that generates a table for the uncertainty coefficient values. | time_stamp | output |
Beanshell_SQL_INSERT_UC_values_INTO_table | A Beanshell script that generates a SQL statement to insert the calculated values of uncertainty coefficient per concept pair into the table. |
timestamp concept_pairs UC_value |
output_SQL |
Beanshell_SQL_generate_Get_Inner_Product | A Beanshell script that generates a SQL statement to retrieve the inner product between two concept profiles. |
concept_pairs timestamp |
out1 |
Beanshell_SQL_create_table_co_occurence | timestamp | out1 | |
Beanshell_SQL_insert_into_co_occurence_table | A Beanshell script that generates SQL statement to insert into the co-occurence table the amount two given concepts co-occur together in literature. |
contingency_values timestamp concept_pairs |
out1 |
Beanshell_generate_SQL_table_inner_product | timestamp | out1 | |
Beanshell_SQL_generate_INSERT_INTO_Inner_Product_table | A Beanshell script that generates a SQL statement to insert the inner product values calculated of two concept profiles into the inner product table. |
concept_pairs timestamp inner_product_value |
out1 |
Beanshell_SQL_statement_get_last_table_data_input | A Beanshell that generates SQL statements to retrieve the inner product of two concept profiles, the co-occurence of the concepts and the uncertainty coefficient. | timestamp | out1 |
Beanshell_SQL_CREATE_last_big_table | timestamp | out1 | |
Beanshell_SQL_Generate_INSERT_INTO_big_table | A Beanshell script that generates SQL statements to insert two concepts and their given co-occurence, uncertainty coefficientcy and inner product values into the table. |
timestamp in1 |
out1 |
Beanshell_remove_dot_and_put_correct_doc_uri_in_con_occ_doc | A Beanshell script that replaces the temp created Taverna file with the correct Document URI. |
concept_occurence_document doc_uri |
out1 |
Beanshell_get_timestamp | A Beanshell script which retreives the time the program started. As in year, month, day, hour, minutes and seconds in military time. | timeStamp | |
Beanshell_generate_SQL_occurence_concept_doc_table | A Beanshell script which generates a sql statement to CREATE a TABLE. TABLE name is the input of the timestamp. The table consists out of 4 columns: concept_occ_doc_id, concept_uri, occurence_uri and doc_uri. Where as concept_occ_doc_id is the PRIMARY KEY and AUTOINCREMENTED. Every other column has a VARCHAR(200) | timeStamp | Table_sql |
Beanshell_extract_uri_doc_and_abstract | A Beanshell script which loops through the input to seperate the Document URIs and Abstract URIs. | Input |
doc_uri abstracts |
Beanshell_SQL_query_generator_Concept_Doc_occurence | A Beanshell script that generates a Sql statement to INSERT the concept URI, occurence URI and document URI in the table named after the timestamp the workflow started. It uses a database called mydb. It is needed to have a database called mydb. |
table_name concept_occurence_document |
out1 |
Name | Description |
---|---|
end |
Source | Sink |
---|---|
Beanshell_get_timestamp:timeStamp | Beanshell_generate_SQL_statement_Get_destinct_concept:table_name |
User_password | Execute_SQL_Query:password |
Beanshell_generate_SQL_statement_Get_destinct_concept:out1 | Execute_SQL_Query:sql |
Driver_value | Execute_SQL_Query:driver |
usr_id | Execute_SQL_Query:userid |
url_value | Execute_SQL_Query:url |
Execute_SQL_Query:resultList | Flatten_List:inputlist |
Flatten_List:outputlist | Beanshell_make_concept_pairs:concept_A |
Flatten_List:outputlist | Beanshell_make_concept_pairs:concept_B |
Beanshell_make_concept_pairs:concept_pair | Flatten_List_2:inputlist |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_generate_contingency_table:table_name |
Flatten_List_2:outputlist | Beanshell_SQL_generate_contingency_table:concept_pairs |
Beanshell_SQL_generate_contingency_table:out1 | Execute_SQL_Query_2:sql |
User_password | Execute_SQL_Query_2:password |
Driver_value | Execute_SQL_Query_2:driver |
usr_id | Execute_SQL_Query_2:userid |
url_value | Execute_SQL_Query_2:url |
Execute_SQL_Query_2:resultList | Flatten_List_3:inputlist |
Flatten_List_3:outputlist | Beanshell_correct_contincengy_table:contingency_values |
Beanshell_correct_contincengy_table:corrected_contingency_values | Beanshell_calculate_Uncertainty_Coefficient:corrected_contingency_values |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_generate_table_UC:time_stamp |
Beanshell_SQL_generate_table_UC:output | Execute_SQL_Update_CREATE_TABLE_UC:sql |
User_password | Execute_SQL_Update_CREATE_TABLE_UC:password |
Driver_value | Execute_SQL_Update_CREATE_TABLE_UC:driver |
usr_id | Execute_SQL_Update_CREATE_TABLE_UC:userid |
url_value | Execute_SQL_Update_CREATE_TABLE_UC:url |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_INSERT_UC_values_INTO_table:timestamp |
Beanshell_calculate_Uncertainty_Coefficient:UC_value | Beanshell_SQL_INSERT_UC_values_INTO_table:UC_value |
Flatten_List_2:outputlist | Beanshell_SQL_INSERT_UC_values_INTO_table:concept_pairs |
User_password | Execute_SQL_Update_INSERT_INTO_UC_table:password |
Beanshell_SQL_INSERT_UC_values_INTO_table:output_SQL | Execute_SQL_Update_INSERT_INTO_UC_table:sql |
Driver_value | Execute_SQL_Update_INSERT_INTO_UC_table:driver |
usr_id | Execute_SQL_Update_INSERT_INTO_UC_table:userid |
url_value | Execute_SQL_Update_INSERT_INTO_UC_table:url |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_generate_Get_Inner_Product:timestamp |
Flatten_List_2:outputlist | Beanshell_SQL_generate_Get_Inner_Product:concept_pairs |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_create_table_co_occurence:timestamp |
Beanshell_SQL_create_table_co_occurence:out1 | Execute_SQL_Update_CREATE_TABLE_Co_Occurence:sql |
User_password | Execute_SQL_Update_CREATE_TABLE_Co_Occurence:password |
Driver_value | Execute_SQL_Update_CREATE_TABLE_Co_Occurence:driver |
usr_id | Execute_SQL_Update_CREATE_TABLE_Co_Occurence:userid |
url_value | Execute_SQL_Update_CREATE_TABLE_Co_Occurence:url |
Flatten_List_3:outputlist | Beanshell_SQL_insert_into_co_occurence_table:contingency_values |
Flatten_List_2:outputlist | Beanshell_SQL_insert_into_co_occurence_table:concept_pairs |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_insert_into_co_occurence_table:timestamp |
Beanshell_SQL_insert_into_co_occurence_table:out1 | Execute_SQL_Update_INSERT_INTO_Co_occurence_table:sql |
User_password | Execute_SQL_Update_INSERT_INTO_Co_occurence_table:password |
Driver_value | Execute_SQL_Update_INSERT_INTO_Co_occurence_table:driver |
usr_id | Execute_SQL_Update_INSERT_INTO_Co_occurence_table:userid |
url_value | Execute_SQL_Update_INSERT_INTO_Co_occurence_table:url |
Beanshell_get_timestamp:timeStamp | Beanshell_generate_SQL_table_inner_product:timestamp |
Beanshell_generate_SQL_table_inner_product:out1 | Execute_SQL_Update_CREATE_TABLE_Inner_Product:sql |
User_password | Execute_SQL_Update_CREATE_TABLE_Inner_Product:password |
Driver_value | Execute_SQL_Update_CREATE_TABLE_Inner_Product:driver |
usr_id | Execute_SQL_Update_CREATE_TABLE_Inner_Product:userid |
url_value | Execute_SQL_Update_CREATE_TABLE_Inner_Product:url |
Beanshell_SQL_generate_Get_Inner_Product:out1 | Execute_SQL_Query_Get_Inner_Product:sql |
User_password | Execute_SQL_Query_Get_Inner_Product:password |
Driver_value | Execute_SQL_Query_Get_Inner_Product:driver |
usr_id | Execute_SQL_Query_Get_Inner_Product:userid |
url_value | Execute_SQL_Query_Get_Inner_Product:url |
Execute_SQL_Query_Get_Inner_Product:resultList | Flatten_List_4:inputlist |
Flatten_List_4:outputlist | Flatten_List_5:inputlist |
Flatten_List_5:outputlist | Beanshell_SQL_generate_INSERT_INTO_Inner_Product_table:inner_product_value |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_generate_INSERT_INTO_Inner_Product_table:timestamp |
Flatten_List_2:outputlist | Beanshell_SQL_generate_INSERT_INTO_Inner_Product_table:concept_pairs |
Beanshell_SQL_generate_INSERT_INTO_Inner_Product_table:out1 | Execute_SQL_Update_INSERT_INTO_Inner_Product_table:sql |
User_password | Execute_SQL_Update_INSERT_INTO_Inner_Product_table:password |
Driver_value | Execute_SQL_Update_INSERT_INTO_Inner_Product_table:driver |
usr_id | Execute_SQL_Update_INSERT_INTO_Inner_Product_table:userid |
url_value | Execute_SQL_Update_INSERT_INTO_Inner_Product_table:url |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_statement_get_last_table_data_input:timestamp |
Beanshell_SQL_statement_get_last_table_data_input:out1 | Execute_SQL_Query_Get_data_for_big_table:sql |
User_password | Execute_SQL_Query_Get_data_for_big_table:password |
Driver_value | Execute_SQL_Query_Get_data_for_big_table:driver |
usr_id | Execute_SQL_Query_Get_data_for_big_table:userid |
url_value | Execute_SQL_Query_Get_data_for_big_table:url |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_CREATE_last_big_table:timestamp |
Execute_SQL_Query_Get_data_for_big_table:resultList | Beanshell_SQL_Generate_INSERT_INTO_big_table:in1 |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_Generate_INSERT_INTO_big_table:timestamp |
Beanshell_SQL_CREATE_last_big_table:out1 | Execute_SQL_Update_CREATE_TABLE_big_data:sql |
Driver_value | Execute_SQL_Update_CREATE_TABLE_big_data:driver |
User_password | Execute_SQL_Update_CREATE_TABLE_big_data:password |
usr_id | Execute_SQL_Update_CREATE_TABLE_big_data:userid |
url_value | Execute_SQL_Update_CREATE_TABLE_big_data:url |
Beanshell_SQL_Generate_INSERT_INTO_big_table:out1 | Execute_SQL_Update_INSERT_INTO_big_table:sql |
User_password | Execute_SQL_Update_INSERT_INTO_big_table:password |
Driver_value | Execute_SQL_Update_INSERT_INTO_big_table:driver |
usr_id | Execute_SQL_Update_INSERT_INTO_big_table:userid |
url_value | Execute_SQL_Update_INSERT_INTO_big_table:url |
Indexer_tool:concept_per_document | Split_string_into_string_list_by_regular_expression:string |
regex_value:value | Split_string_into_string_list_by_regular_expression:regex |
Ontology_input | Indexer_tool:ontology |
Beanshell_extract_uri_doc_and_abstract:abstracts | Indexer_tool:abstract_content |
User_password | Execute_SQL_Update_INSERT_INTO_occurence_table:password |
Driver_value | Execute_SQL_Update_INSERT_INTO_occurence_table:driver |
usr_id | Execute_SQL_Update_INSERT_INTO_occurence_table:userid |
url_value | Execute_SQL_Update_INSERT_INTO_occurence_table:url |
Beanshell_SQL_query_generator_Concept_Doc_occurence:out1 | Execute_SQL_Update_INSERT_INTO_occurence_table:sql |
User_password | Execute_SQL_Update_CREATE_TABLE_Occurence:password |
Driver_value | Execute_SQL_Update_CREATE_TABLE_Occurence:driver |
usr_id | Execute_SQL_Update_CREATE_TABLE_Occurence:userid |
url_value | Execute_SQL_Update_CREATE_TABLE_Occurence:url |
Beanshell_generate_SQL_occurence_concept_doc_table:Table_sql | Execute_SQL_Update_CREATE_TABLE_Occurence:sql |
Beanshell_extract_uri_doc_and_abstract:doc_uri | Beanshell_remove_dot_and_put_correct_doc_uri_in_con_occ_doc:doc_uri |
Split_string_into_string_list_by_regular_expression:split | Beanshell_remove_dot_and_put_correct_doc_uri_in_con_occ_doc:concept_occurence_document |
Beanshell_get_timestamp:timeStamp | Beanshell_generate_SQL_occurence_concept_doc_table:timeStamp |
abstract_input_depth2 | Beanshell_extract_uri_doc_and_abstract:Input |
Beanshell_get_timestamp:timeStamp | Beanshell_SQL_query_generator_Concept_Doc_occurence:table_name |
Beanshell_remove_dot_and_put_correct_doc_uri_in_con_occ_doc:out1 | Beanshell_SQL_query_generator_Concept_Doc_occurence:concept_occurence_document |
Execute_SQL_Update_INSERT_INTO_big_table:resultList | end |
Controller | Target |
---|---|
Execute_SQL_Update_INSERT_INTO_occurence_table | Beanshell_generate_SQL_statement_Get_destinct_concept |
Execute_SQL_Update_INSERT_INTO_Inner_Product_table | Execute_SQL_Query_Get_data_for_big_table |
Execute_SQL_Update_INSERT_INTO_UC_table | Beanshell_SQL_generate_Get_Inner_Product |
Workflow Type
Version 2 (of 9)
Shared with Groups (0)
None
Log in to add to one of your Packs
Statistics
In chronological order:
-
Created by Amrish Mahes on Wednesday 30 April 2014 19:14:47 (UTC)
-
Created by Amrish Mahes on Wednesday 30 April 2014 19:18:01 (UTC)
-
Created by Amrish Mahes on Wednesday 30 April 2014 19:18:42 (UTC)
-
Created by Amrish Mahes on Wednesday 07 May 2014 15:33:38 (UTC)
Revision comment:New version with comment and the right websites to download dependencies
-
Created by Amrish Mahes on Monday 12 May 2014 15:34:00 (UTC)
-
Created by Amrish Mahes on Wednesday 11 June 2014 13:23:36 (UTC)
-
Created by Amrish Mahes on Sunday 15 June 2014 17:45:34 (UTC)
Revision comment:Changed Table construction workflow
For peregrine tool invocation it is now mandatory to give path to the prodcution.properties and peregrine-skos-cli.jar
-
Created by Amrish Mahes on Sunday 15 June 2014 17:50:32 (UTC)
-
Created by Amrish Mahes on Sunday 15 June 2014 17:55:11 (UTC)
Revision comment:Removed the LIMIT 50 in the sql_value file
Reviews (0)
Other workflows that use similar services (0)
There are no workflows in myExperiment that use similar services to this Workflow.
Comments (0)
No comments yet
Log in to make a comment